###前提・実現したいこと
構築を依頼されたLAMPサーバーのデータベース管理にphpMyAdminを使用したいと思い、
https://www.server-world.info/query?os=CentOS_7&p=mysql56&f=2
を参考に、phpMyAdminをインストールしました。
###発生している問題・エラーメッセージ
http://[centos6・apache設定名]/phpmyadmin/
をLAN上のパソコンのブラウザから表示すると、「phpMyAdmin へようこそ:の画面は表示されますが、MySQLのrootとパスワードを入力すると
#2002 MySQL サーバにログインできません
と表示され、接続できません。
###試したこと
●rootでログイン出来ない設定?
>コマンドラインのmysql -u root -pではログインできます。
phpMyAdmin #2002 MySQL サーバにログインできません
で調べた結果
●socketの設定では?
show variables like '%sock%';
結果:/home/[mysql-user]/mysqldb/mysql.sock
を指しています。データベースが大きくなりそうなので、yum -y install mysql-serverでインストールした直後のvi /etc/my.cnfの設定でdatadirをhome以下に移しました。
その状態で mysql_secure_installation を実行したのですが、このときも#2002が出て進まないため、一度
socket=/var/lib/mysql/mysql.sock
に戻し、設定完了後、socket=/home/[mysql-user]/mysqldb/mysql.sock に戻しました。
●phpがこのsocketを認識していない?
Googleでの調査で
http://tweeeety.hateblo.jp/entry/2015/07/11/191823
がヒットしましたので
/etc/php.ini に対し
mysql.default_socket = /home/[mysql-user]/mysqldb/mysql.sock
mysqli.default_socket = /home/[mysql-user]/mysqldb/mysql.sock
を設定しましたが、これを設定しても #2002 MySQL サーバにログインできません が出続けます。
気になりますのは、上記の一度コマンドでログイン後、show variables like '%sock%';を指しているのですが、別の調べ方の mysql_config --socket だと /var/lib/mysql/mysql.sockを指しています。
もしかすると、datadirやsocketの位置の移動方法が間違っているのでしょうか?
MySQLのデータベース位置の移動については調べて行い、コマンドラインでは接続できるので、間違ってはいないと思うのですが…
何か見逃している事、間違っている事、設定を忘れているような事がありましたら、教えてください。
よろしくお願いいたします。
●PHPMyAdminのDB接続先設定
/etc/phpMyAdmin/config.inc.php
$cfg['Servers'][$i]['host'] = 'localhost';
同一サーバー上のなので、localhostでOKだと思います。
$cfg['Servers'][$i]['socket'] = '';
$cfg['Servers'][$i]['user'] = '';
$cfg['Servers'][$i]['password'] = '';
この辺りが空欄になっています。
回答1件
あなたの回答
tips
プレビュー