MySQL 5.0 (559レス)
MySQL 5.0 http://mevius.5ch.net/test/read.cgi/db/1081818145/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
301: NAME IS NULL [sage] 2008/06/02(月) 21:44:48 ID:??? 経過 他のJDBC アプリでログが出力されていたので アプリのソースってことがわかりました。 しかし、ゴミになるってことはなに?ソースを追うしかないのか? http://mevius.5ch.net/test/read.cgi/db/1081818145/301
302: NAME IS NULL [sage] 2008/06/02(月) 22:30:25 ID:??? 自己れす 解決 connect まではログにでているので、select 文を べた書きにしてうまく流れたので 元に戻して 確認。 jdbc のバージョンがでるところからおかしくなっていたのでJDBCなのか? そうなのか? http://mevius.5ch.net/test/read.cgi/db/1081818145/302
303: NAME IS NULL [sage] 2008/06/07(土) 04:02:12 ID:??? 質問させて下さい。 これまで、Linux上で動作させていたphpスクリプトをWindowsに以降しようとしているのですが phpからMySQLにINSERT文を行ったのですが、文字化けしてしまいます。 どうすれば直りますでしょうか? ・WindowsXP(Pro) ・php-5.2.5-Win32.zip ・mysql-5.0.45-win32 1※ mysql> SET CHARACTER SET SJIS; Query OK, 0 rows affected (0.00 sec) mysql> show variables like 'character_set%'; | Variable_name | Value | character_set_client | sjis | character_set_connection | latin1 | character_set_database | latin1 | character_set_filesystem | binary | character_set_results | sjis | character_set_server | latin1 | character_set_system | utf8 | character_sets_dir | C:\Program Files\MySQL\MySQL Server 5.0\share\c http://mevius.5ch.net/test/read.cgi/db/1081818145/303
304: 303 [sage] 2008/06/07(土) 04:09:00 ID:??? 続きです。 2※phpスクリプト内部でINSERT文を実行する前に次のコードも入れています。 mysql_query('set character set sjis',$dbHandle) 3※組み立てられたSQLを画面上に print(""); で確認すると正常に日本語が入力されています。 4※MySQLのデータ操作を行う際にCSEも使っているのですが、CSEよりテーブルを開き直接日本語 を登録すると、その値は正常に日本語で登録されています。しかし、phpにて一覧出力すると ??? という 具合に文字化けしてしまいます。 あと、追加で質問させて頂きたいのですが、コマンドラインからMySQLを再起動するには 何というコマンドを実行すればよいのでしょうか?ぐぐっても中々ヒットしませんでした。 因みに、GUIツールとして MySQL Query Browserを使用しているのですがここから再起動とかも出来る のでしょうか? http://mevius.5ch.net/test/read.cgi/db/1081818145/304
305: NAME IS NULL [sage] 2008/06/07(土) 06:46:22 ID:??? >>303,304 まず、my.iniの設定から見直してみよう。 その show variables の結果から、サーバがLatin1で起動されてるのが分かる。 create databaseやcreate table時の指定が分からんからなんともだが、そのまま作成したとしたなら、 仮に、"set names cp932"したところで、変更されるのは"connection"と"client"のみ。 なので、mysqldがデータを受け取った時に、内部の保存コードである"latin1"に変換をかけてしまう。 そこで、当然cp932(ms-sjis)はlatin1にマップ出来ないので文字列が壊れる。 回避策は、以下の件とも絡むので後述。 > コマンドラインからMySQLを再起動するには の件だけど、恐らく、>>303のpathから見て、インストーラでデフォルト設定でinstallしたんだろうけど、 それだと多分、Windowsのサービスに登録されてるはず。その場合はDos窓から、 nat start mysql (mysql5かも?) で起動、 net stop mysql (同上) で停止。 多分自動起動になってると思われるから、Winを立ち上げると同時に起動してるはず。 コントロールパネル→管理ツール→サービスからでも起動、停止が行える。 (QueryBrowser等GUIツールは使ったことないんで、ようわからん。すまん) 起動だけなら、install_pathのmysqld-nt.exeをダブルクリックか、Dos窓から、直接そのmysqd-nt.exeを叩けばよい。 停止は、install_path/bin/mysqladmin shutdown で。 http://mevius.5ch.net/test/read.cgi/db/1081818145/305
306: 305 [sage] 2008/06/07(土) 06:46:57 ID:??? 続き で、その起動時にオプションで、設定ファイル(my.ini)を読み込ませたり、charset他各種設定オプションを渡したりできる。 サービス登録の場合も、上記の「管理ツール」→「サービス」から、起動時のコマンドラインオプションを設定できる。 なので、charset等適切に編集したmy.iniを読み込ますように起動させればよい。 具体的な設定方法などは、本家のManual等を参照してくれ。 ちなみにWin版のバイナリ版phpは、php_mysql.dllがlatin1でコンパイルされてるので、 上記のことをやってなお、接続時に全てのクエリの前に "set names cp932" 等の処置が必要。 又は、上記の設定ファイル中で書くやり方もある。 それでは、がんばってくれ。 http://mevius.5ch.net/test/read.cgi/db/1081818145/306
307: 306 [sage] 2008/06/07(土) 06:54:54 ID:??? ごめん。一つうそついてしまった。 php_mysql.dllじゃなくて、正確にはmysqlに付属のlibmysql.dllが、 デフォルトコードLatin1でコンパイルされているの間違い。 (まあ、phpバンドルのlibmysql,dllも同じことなんだけど) http://mevius.5ch.net/test/read.cgi/db/1081818145/307
308: 303 [sage] 2008/06/07(土) 15:37:12 ID:??? >>305さん ご丁寧にレスありがとございます。 色々とお教え頂いた様に試してみたのですが相変わらず、文字化けしてしまします。 1.my.ini [client] default-character-set=sjis [mysql] default-character-set=sjis [mysqld] default-character-set=sjis skip-character-set-client-handshake 2.文字コード mysql> SHOW VARIABLES LIKE 'char%'; | character_set_client | sjis | character_set_connection | sjis | character_set_database | sjis | character_set_filesystem | binary | character_set_results | sjis | character_set_server | sjis | character_set_system | utf8 | character_sets_dir | C:\Program Files\MySQL\MySQL Server 5.0\share\charsets\ http://mevius.5ch.net/test/read.cgi/db/1081818145/308
309: 303 [sage] 2008/06/07(土) 15:43:13 ID:??? 続きです。 3.php内部での文字コードの設定部分 mysql_query("SET NAMES sjis"); 4.phpでテーブルより取得した値をsjisに変換した上で画面に出力 while($row = mysql_fetch_array($rs)) { /* 内部文字エンコーディングからSJISに変換 */ $str = $row["NAME"]; print("文字チェック1:[ ".$str." ] <br/>"); $str = mb_convert_encoding($str, "SJIS"); print("文字チェック2:[ ".$str." ] <br/>"); ↓出力結果 文字チェック1:[ ?????l ] 文字チェック2:[ ?????l ] http://mevius.5ch.net/test/read.cgi/db/1081818145/309
310: 303 [sage] 2008/06/07(土) 17:57:02 ID:??? 自己解決しました。 ・・・MySQLってなかなか一癖ありますね。。。 思わぬ落とし穴がありました。 http://mevius.5ch.net/test/read.cgi/db/1081818145/310
311: NAME IS NULL [sage] 2008/06/08(日) 04:27:00 ID:??? >>310 どう解決したかを書かないと意味がないだろ。 自分がよければそれでいいのかい? とりあえず文字コードを多重変換して嵌ってたんだろうと推測しとく。 http://mevius.5ch.net/test/read.cgi/db/1081818145/311
312: NAME IS NULL [sage] 2008/06/08(日) 15:15:06 ID:??? >>311 良いよ だって自己解決したんだし。 http://mevius.5ch.net/test/read.cgi/db/1081818145/312
313: NAME IS NULL [sage] 2008/06/13(金) 12:07:29 ID:??? 質問です。 PHPとMySQLの連携を考えており、DBに接続して PHPから表示させることは出来ました。 SELECT文についての質問ですが、今現在以下の通りになっています。 SELECT * FROM wp_posts WHERE ID = 30 OR ID = 190 OR ID = 170 ORDER BY ID DESC これをPHPでwhileを使って縦に順番に表示すると、 ID=190、ID=170、ID=30の順番で書き出されました。 この表示する順番を、一番上からID=30、ID=190、ID=170と、 SELECT文に記述されたIDの順番通りに表示するには、どうすればよいでしょうか? なにかいい案がある方、いらっしゃいましたらご教示下さい。 http://mevius.5ch.net/test/read.cgi/db/1081818145/313
314: NAME IS NULL [sage] 2008/06/13(金) 12:35:19 ID:??? select * from wp_posts order by (case ID when 30 then -3 when 190 then -2 when 170 then -1 else ID end) asc; http://mevius.5ch.net/test/read.cgi/db/1081818145/314
315: NAME IS NULL [sage] 2008/06/21(土) 20:46:10 ID:??? union使えば? http://mevius.5ch.net/test/read.cgi/db/1081818145/315
316: NAME IS NULL [sage] 2008/07/12(土) 01:40:35 ID:??? MySQLはXen上では使えないんですか? CentOSのDomU上でMySQL5を使っておりますが、 Buffer I/O error とやらが大量に出てきて、ファイルシステムが落ちます。 再現するのはMySQLが動いている時だけなので、MySQLが原因とみて間違いないと思います。 ディスクもディスクイメージも壊れていませんが。。。メソメソ http://mevius.5ch.net/test/read.cgi/db/1081818145/316
317: NAME IS NULL [sage] 2008/07/13(日) 22:11:33 ID:??? >>316 configureのときに--skip-bdbだったかな。 http://mevius.5ch.net/test/read.cgi/db/1081818145/317
318: 316 [sage] 2008/07/14(月) 00:34:32 ID:??? >>317 ありがとう。試してみる。 http://mevius.5ch.net/test/read.cgi/db/1081818145/318
319: NAME IS NULL [sage] 2008/07/14(月) 20:39:43 ID:??? PAM-MySQL の導入を検討しているのですが、 (see: http://pam-mysql.sourceforge.net/Documentation/package-readme.php) crypt の値として平文、crypt(3)、PASSWORD()、MD5() を選択できるのですが、 平文は論外として、どの選択がよりセキュアなのでしょうか? http://mevius.5ch.net/test/read.cgi/db/1081818145/319
320: NAME IS NULL [sage] 2008/07/15(火) 22:00:56 ID:??? >>319です。自分でも調べてみようかと思いソースを覗いてみたら crypt=4 (or "sha1") で SHA1 が使えたみたいなのでこれを使ってみることにします。 # と思ったら Web に書いてないだけで README に書いてあったorz http://mevius.5ch.net/test/read.cgi/db/1081818145/320
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 239 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.007s