
| ・ |
ドキュメントセンターを初めてご利用する方や運営方針についての基本的な姿勢をご覧になりたい方へ。
|
| ご利用の皆様から多く寄せられる質問にお答えしています。 |
|
| ・ |
ディーエーオフィスなどが利用する用語に関する解説を行います。
|
|
|
 |
 |  |
PHPからMySQLへ接続できないのですが? |
認証方式が変更されたことに伴い、接続ができなくなっているようです。
MySQL 4.1から、ユーザ認証に関する方式が変更になっています。MySQL4.1/5以降へ接続するためには、旧形式を使えるようにしなければなりません。
! スクリプトの例
mysql_connect('localhost','account','pass');
! エラーとして表示されるメッセージの例
Warning: mysql_connect(): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
! old-passwordsを指定するには
MySQLを起動するときに、old-passwordsを追加指定して起動するか、my.cnfファイルへ設定を追記した上で起動する必要があります。
= mysqlの起動に追加指定 =
mysqld_safe old-passwords &
= my.cnf に追加指定 =
ee /etc/my.cnf
[mysqld]
old-passwords
「[mysqld]」という場所がないときは追記してください。すでに「[mysqld]」がある場合は、「old-passwords」の追加だけで大丈夫です。保存できたら、MySQLを再起動します。
! mysql上での確認
確認はmysql上でできます。以下のSQLを発行すると、長いパスワードが表示されていたならば、新形式です。旧形式はより短いパスワードになります。パスワード文字列は、可読できる形ではないので、設定されたパスワードが格納されているわけではありません。
= ユーザ名とパスワードの一覧 =
select host,user,password from mysql.user;
= 変更前に格納されたパスワード =
*1DEDA883C67959DBE207FA22D67482EECC582F0E
= 変更後に格納されたパスワード =
7c8551fa3d57f9f4
|
| 文書番号 |
06446 |
| 日付 |
2006.04.14 |
| 参照数 |
1066 |
|