MySQL
- レプリケーションがうまくいきません!
WINDOWS xp と windows2000 で mysql を起動させて レプリケーションを取りたいと思っています。 バージョンは 4.0.22 同士です。 どうもうまくレプリケーションできません。 my.ini の内容です。 マスター [mysqld] log port=3306 skip-locking default-character-set=sjis max_allowed_packet=16M log-bin server-id=1 binlog_do_db=test set-variable=key_buffer=16M set-variable=thread_stack=128k set-variable=flush_time=1800 basedir=c:/mysql/ datadir=c:/mysql/data/ スレーブ [mysqld] log-bin server-id=101 master-host=10.0.0.1 master-user=rep1 master-password=rep1 replicate-do-db=test master-port=3306 basedir=c:/mysql datadir=c:/mysql/data default-character-set=sjis set-variable=key_buffer=16M ちなみに3306経由のアクセスはできています。 マスター側の show master status; show slave status; では、slave status が Empty set と出ます。 スレーブ側の show master status; show slave status; では、両方出ます。 何がおかしいのでしょうか?
- 締切済み
- takizawa-777
- MySQL
- 回答数1
- MySQLの文字化け
Win XP MySQL4.0.13 TOMCAT4.1 APACHE2 以上を使用して自宅にて開発を行っております。 HTMLページより入力されたデータをjspファイルへ渡し、jspファイル内へ記述されたSQL文によりデータベースへの書き込みを試みております。 データベースへの書き込み自体はできるのですが、文字化けで困っています。 書き込み後、プロンプトよりselect文で確認すると、日本語のみ文字化けし、アルファベットは大文字が小文字にところどころなってしまいます。数字は問題ありませんでした。 具体的には「あいうえお」が「BDFHJ」に文字化けしていました。 MySQLのコンソールのMY.ini Setuoタブに [mysqld] default-character-set=sjis [mysql] default-character-set=sjis と指定しており、HTML,jspファイル内でもshift-jisを指定しております。 ご教授よろしくお願いしたします。
- ベストアンサー
- nakatakanakataka
- MySQL
- 回答数3
- 空メールをMySQLへ
宜しくお願いします。 特定のアカウントに送られてきたメールのアドレスを自動的にMySQLデータベースへ格納する事は出来ないでしょうか?? 何卒、ご教授の程、宜しくお願い致します。
- 平仮名の並び替えについて
select 表示するフィールド名 from テーブル名 order by 並び替え対象のフィールド名; と入力して「い こ た あ な」を並び替えしたのですが「な あ い こ た」となり「な」が上手く並び替えできませんでした。何が間違えているのか分からないので教えてください。
- 複数表からのカウント(2)教えてください
前回の質問と関連しますが 今度は複数の人について 以下のような処理を行うときのクエリーでうまくいか ないのですがどのようになおせばいいでしょうか。 よろしくお願いします <table A> n id name 1 1 yoshida 2 2 tanaka <table B> n id sub score 1 1 AAA 100 2 1 BBB 100 3 1 CCC 50 4 2 AAA 80 5 2 BBB 100 6 2 CCC 50 <result> name count yoshida 2 tanaka 1 tableAとtableBの2つの表があり tableAの2人(以上あり)のscoreが100である subの数をカウントしたい場合 SELECT tableA.name as Name, count(*) FROM tableA, TableB where(tableA.id = tableB.id and tableB.score = 100 )
- 複数表からのカウントを教えてください
<table A> no name 1 yoshida 2 tanaka <table B> no sub score 1 german 100 1 english 100 1 science 50 tableAとtableBの2つの表があり 1 yoshidaさんが100点をとった科目の数を (ここでは2となります) カウントしたいのですが以下の_________で どのように入力したらいいでしょうか 先週から始めたばかりで表の入力はできるよう になったのですがカウントのしかたがよく わかりません よろしくお願いします SELECT tableA.no as No, tableA.name as Name, ___________________ FROM tableA, TableB where(tableA.no = tableB.no and tableB.score = 100 and tableB.no = 1 )
- MYSQLで異なるテーブル間のデータを参照できますか?
MYSQLの超素人なので質問自体がおかしいかもしれませんが、あるテーブルのデータを他のテーブルにも利用したいのですが、これは可能でしょうか? もともとの発端は、mysqlのtable_1からデータを引っ張ってくるphpのプログラムがあるのですが、そのtable_1には私の欲しいデータがありませんでした。それでphpmyadmin(私はこれでしかDBをいじれません)を見てみると、table_2に欲しいデータがありました。 この時点で私は ・phpのプログラムをいじってtable_2からもデータを引っ張ってくるようにしたほうがいいのか それとも ・table_1にもう一行(これはなんていうのでしょう・・・ 呼び方が分かりません)追加してtable_2の欲しいデータを引っ張ってきた方がいいのか などと考えてみたのですが、いかんせん、phpもmysqlも全然分からないので、どうしたもんかと思っておりました。それでまだ簡単そうな2番目について質問してみました。が、何か根本的に考え方がおかしい部分などあると思うので、それもあわせて指摘していただけると幸いです。よろしくお願いします。
- count()の結果を別の計算で使うには
count()の結果を別の計算で使うにはどのようにすればいいでしょうか たとえば 表:table1 no val 1 3 2 4 3 6 4 8 5 3 . . でvalが3である個数を数えて10倍かけた値を得たい 場合 selece count(*) from table1 where val = 3 の続きをどのようにすればいいでしょうか よろしくお願いします
- SQLの語句について
自分はSQLを学んでいるんですが、意味のわからない語句がたまにあったりして困っています。 語句についての、説明などが書いてある、サイトはないでしょうか? よろしくお願いしまし
- ベストアンサー
- noname#9207
- MySQL
- 回答数2
- mysqlimportの使い方について
FreeBSD版のMySQLのデータをmysqldumpコマンドで 以下のようにバックアップしました。 mysqldump -uroot -p12345 AAA > 041213.txt こうしてバックアップされた041213.txtファイルを、Windows版のMySQLにそのままリカバリーしたいのですが、 mysqlimportを以下のように使用すると、 mysqlimport -uroot -p12345 AAA 041213.txt mysqlimport: Error: Table 'AAA.041213' doesn't exist, when using table: 041213 というエラーが返ってきてしまいます。良くわからないのが、データーベースとしてAAAを指定しているのに、インポートしようとしているファイル名がAAA.041213というファイルのようになっているような気がするのですが。。。 Windows版のMySQLにmysqldumpで出力されたファイルをそののままリカバリーさせる一番単純な方法はどうすればいいのでしょうか?
- レコード操作ツール探してます
windowsで動くレコード操作ツールありませんか^-^?(追加/更新/削除できるもの) よろしくお願いします。 1)Access2000のリンクテーブルやパススルークエリ 2)mysql.exe でもそれなりにできるのですが、もーーーと便利なソフトウェア探してます。 1)Access2000のリンクテーブルは、定義したデータベースにprimary keyがないとデータ更新できない... 2)mysql.exe コマンド打つのめんどい ※かねやんMySQLAdmin.exeでいけるかと思いましたが、レコードいじれませんでした。
- php+MySQLしか使えないレンタルサーバーでPerlを使う方法は?
先日レンタルサーバーを借りましたが、 php+MySQLしか使えないレンタルサーバーだと いうことが後で発覚しました。 使おうとしていたのはPerl(CGI)なので、困っております。 DBI.pmはインストールされていないという事で、 自分のディレクトリのどこかに置いてやるという ワザがあるようなのですが、どなたかご存じないでしょうか? どうぞ宜しくお願い致します。
- UPDATE文の中でのSELECT文は可能?
タイトル通りなのですが UPDATE文構造の中にSELECT文は使用できるのでしょうか? リファレンス見ても使えそうに無いのでたぶんできないと思うのですが、やりたいことは customer ┌──┬─────┐ │id │frequency │ ├──┼─────┤ │101 │ 2 │ │102 │ 1 │ │103 │ 1 │ │104 │ 2 │ └──┴─────┘ buy ┌──┬──────┐ │id │catalognum │ ├──┼──────┤ │101 │1255 │ │104 │1353 │ │102 │1255 │ │103 │1521 │ │104 │1351 │ │105 │1345 │ │101 │1351 │ └──┴──────┘ 上記のテーブルのcustomerへのUPDATEです。 buy.id個数をCOUNTしてcustomer.frequencyに反映させるということです。 REPLACE内でのSELECTは可能ですが、いちいち全てのfieldを設定してやらないと、他のフィールドがNULLで埋まってしまうので、UPDATE文で更新できるなら比較的楽かなぁと思っています。 ------------------------------- REPLACE文だとこんな感じです REPLACE customer (id,frequency) FROM customer , buy WHERE buy.id = customer.id GROUP BY customer.id ----------------------------- 環境 MySQL 3.23.58 freeBSD PHP 4.3
- A~B にデータがある人以外の人をHITさせる
顧客検索で、ある期間内に来店がない人を検索しようとしていますが、全然いい手が思い浮かびません。 具体的には、 以下テーブルにて、 CREATE TABLE raiten (m_id char(8), dt date); insert into raiten values ("a01", '2004-07-01'), ("a01", '2004-08-02'), ("a01", '2004-09-01'), ("a01", '2004-10-01'), ("a02", '2004-07-02'), ("a02", '2004-10-10'), ("a03", '2004-07-10'), ("a03", '2004-11-01'), ("a03", '2004-12-01'), ("a04", '2004-07-01'), ("a04", '2005-07-02'), ("a05", '2004-07-01'), ("a05", '2004-08-02'), ("a06", '2004-09-02'), ("a07", '2004-06-10'), ("a07", '2004-07-15'), ("a07", '2004-09-02'), ("a08", '2004-07-15'), ("a09", '2004-07-05'), ("a09", '2004-07-15'), ("a09", '2004-07-30'), ("a09", '2004-08-15'), ("a09", '2004-09-15'), ("a09", '2004-10-15'), ("a10", '2004-07-15'), ("a10", '2004-07-06'), ("a10", '2004-09-15'); 2004年08月に来店がない人を検索したいのです。 (2004-08-01 ~ 2004-08-31 まで) 来店がある人ならばすぐ出るのですが、 来店がない人は、その期間来店がないが他の期間に来店があるため、うまくデータが出てこないのが現状です。 8月に来店があるのは a01,a05,a09 の三人なので、 それ以外が出てくるようにはできないでしょうか。
- ベストアンサー
- moon_night
- MySQL
- 回答数6
- PHPからmySQLに接続できない
自宅サーバー(PHP4.3.9+mySQL4.1+Windows2000)で構築を試みています。 PHPからmySQLに接続するのに次のようなソースを試してみました。 <?php $mysql=mysql_connect("localhost","user","password"); if(mysql_select_db("dbname", $mysql)){ print "OK"; }else{ print "NG"; } ?> 次のようなエラーが返りました。 Warning: mysql_connect(): Client does not support authentication protocol requested by server; consider upgrading MySQL client in C:\create.php on line Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in C:\create.php on line このエラーについていろいろ調べたのですが、mySQL4.1以降からパスワードのハッシュが変更になっており、PHPからアクセスできないという記事を見つけました。 解決方法としてmySQL起動時に「--old-passwords」オプションをつければよい、という記事だったのですが、 質問1:このエラーは果たしてパスワードの問題なのでしょうか。他に考えられる原因はないでしょうか。 質問2:Windowsの場合、mySQLはサービスとして起動しているのでオプションをどのようにつければいいのかわかりません。 質問3:PHPのバージョンが上がるにつれ、この問題は解決するのかもしれませんが、現段階でPHP側で解決する手段はないのでしょうか。 ちなみにコマンドラインから c:\>c:\mysql\bin\mysqlshow Access denied for 'ODBC'@'localhost'(using password:NO) となります。 コマンドラインからはログインでき、テーブルなどの作成は済んでいます。 よろしくお願いします。
- MySQLのBLOB型
MySQLを使ってデータベースを構築しています。 マニュアル等にBLOB型は大きいサイズ(正確にはわかりません)が格納できるはずですが、どうしても255バイトで切れてしまいます。 LONGBLOB型、TEXT型などにしても同様の結果です。 MySQLのバージョンは4.0.0-alpha、OSはWinサーバはApacheです。 解決方法がありましたら教えてください。
- MySQLからのデータ取得で日本語が文字化けします
質問が削除されてしまったので、再々投稿します。 その1、その2に分けて投稿していたため、削除されてしまいました。 その1の内容のみ投稿します。 現在、データベースにMySQLを使ってJavaでWebアプリケーションを作成しています。 使用環境は以下の通りです: OS: Windows XP Java: 5.0 Tomcat: 4.1.31 MySQL: 4.1.7 MySQL Connector/J: 3.0.16 しかしデータベースに日本語のデータを登録し、アプリケーションからデータを読み 出すと必ず文字化けしてしまいます。 JavaアプリケーションからMySQLへ接続する際のURLでは、以下のようにパラメータ で文字コードを指定しています。 jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=Shift_JIS これをTomcatの設定ファイル(server.xml)の<Context>/<ResourceParams>の中で指定 しています。 また、MySQLの設定ファイル(my.ini)の中でもデフォルト文字セットを以下のように 指定しています。 default-character-set=sjis ちなみにJava側からは以下のようにしてデータを取得してきています。 Connection db=null; PreparedStatement objPs=null; ResultSet rs=null; try{ Context ctx=new InitialContext(); DataSource ds=(DataSource)ctx.lookup("java:comp/env/jdbc/TestDB"); db=ds.getConnection(); objPs=db.prepareStatement("SELECT * FROM bok_inf_tbl ORDER BY published DESC"); rs=objPs.executeQuery(); ・ ・ ・ JSPの先頭では、以下のようにpageディレクティブを記述しています。 <%@ page contentType="text/html;charset=Shift_JIS" %> JSPに直接書かれた日本語は文字化けしません。データベースから取得した部分だけが 文字化けします。 この原因について何が考えられるでしょうか。