私は過去12時間、mysqlとphpMyAdminを設定しようとしましたが、成功しませんでした。そして、はい、何時間もGoogleで調べた後、それが一般的な問題であることを知っています。また、stackoverflowで同様のクエリを読みましたが、それでも解決策がありません。
私はすべてを試しました-変更から
$cfg['Servers'][$i]['port']
config.inc.php
ファイルから3306
、127.0.0.1
....へ.
config.inc.php
ファイルにソケットパスを入力します-tmp/mysql.php
と/var/mysql/mysql.sock
の両方。
My.cnfファイルとphp.iniのソケットパスを変更しようとしましたが、同じエラーが引き続き発生します。
#2002 - No such file or directory
The server is not responding (or the local server's socket is not correctly configured).
MySQL(5.1.65)、PhpMyAdmin(3.5.2.2)およびPHP(5.3.8))を使用しています。
最近、Mac OS Sierraでもこの問題に遭遇しました。 Apacheサーバーは動作していますが、mysqlは動作していません。ソリューションを検索した後、多くの投稿を読んで、このソリューションを見つけました。そしてそれはうまくいきました!
解決策は、mysqlフォルダーに移動することです。私の場合は、
/Applications/MAMP/db/mysql56/
フォルダを除くすべてのファイルを削除します。次に、MAMPを再起動します。
この問題は、PHPがTCPではなくUNIXソケットを介して接続しようとしていたためです。これはこのエラーに似ています。 PHP/PDOを使用してMySQLに接続するときのエラー
まず、mysqlのmy.cnf設定があることを確認してから、デフォルトのソケットの場所を追加します。
[mysqld_safe] socket = /tmp/mysql.sock
次にphp.iniで、PHPそれがどこにあるかを知らせます:
mysql.default_socket = /tmp/mysql.sock
MAMPについて言及しなかったため、これを使用していないと想定しているため、これは手動インストール用ですが、MAMPでも機能する可能性があります。
私の経験では、これはmysqlのソケット変数が原因です。デフォルトでは、MySQLは/tmp/mysql.sockを使用します。
MySQLにログインして、MySQLソケット変数を取得できます。
show variables like '%socket%'
ソケットファイルの場所が表示されます。
ここで、php phpinfo()ファイルを作成し、mysqlまたはmysqliセクションでmysql.default_socketを探します。私のものは/var/mysql/mysql.sockでした。これは、PHPがmysqlが使用している場所とは異なる場所でファイルを探していることを示しています。
同じ値があると仮定して、新しいターミナルを開いて入力します
cd /var
mkdir mysql
cd mysql
ln -s /tmp/mysql.sock mysql.sock
これにより、PHPがチェックしている場所)内にmysqlソケットファイルへのリンクが作成されます。
PHPMyAdminが動作するはずです。
構成ファイルを確認します。
/* $cfg['Servers'][$i]['Host'] = 'localhost'; */
$cfg['Servers'][$i]['Host'] = '127.0.0.1';
$cfg['Servers'][$i]['compress'] = false;
MySQLを再起動します:OSx:Sudo /usr/local/mysql/support-files/mysql.server restart
Linux:Sudo service mysql start
(旧Linux:Sudo /etc/init.d/mysql start
)
High Sierraを実行しているMacbook ProでMAMPを使用しています。私の場合、上記のすべてを試してみましたが、まだ機能しなかったため、次のようにしました。
タッチする前に、「config.inc.php」ファイルをバックアップします(Macでは右クリックして複製します)。 「config_old.inc.php」と呼ぶか名前を変更できます
お気に入りのIDEまたはテキストエディタでファイルを開きます。
i)$ cfg ['Servers'] [$ i] ['Host']
ii)$ cfg ['Servers'] [$ i] ['port']
iii)$ cfg ['Servers'] [$ i] ['socket']
から変更する :
$cfg['Servers'][$i]['Host'] = 'localhost';
に:
$cfg['Servers'][$i]['Host'] = '127.0.0.1';
から変更する :
$cfg['Servers'][$i]['port'] = '3306';
/これがデフォルトかもしれません。 MAMPインストール設定から確認してCMD +を押し、指定したポート番号を確認してください。私の場合、8889に変更しました。/
に:
$cfg['Servers'][$i]['port'] = '8889';
繰り返しますが、MAMPをインストールした場所またはより具体的にはmysql.
から変更する :
$cfg['Servers'][$i]['socket'] = 'some_folder_path or EMPTY';
に:
$cfg['Servers'][$i]['socket'] = '/Applications/MAMP/Library/bin/mysql/mysql.sock';
この変更後、Webブラウザで保存して更新します。
私のために働いた。お役に立てれば。乾杯。
Windows 7 Ultimate、AppServでこの問題が発生しました。 SQLとApacheをリロードするだけです(ただし、両方をリロードする必要がありますが、Apacheのみのリロードは機能しませんでした)。
PHPMyAdmin 4.6.6 サーバー:Apache/2.4.25(Win32)OpenSSL/1.0.2j PHP/5.6.30 サーバーバージョン:5.7.17-log-MySQL Communityサーバー(GPL) PHP:5.6.30
Homebrewを使用している場合は、mariadbを再起動します。私も同じ問題を抱えており、mariadbを停止して起動した後、再び機能し始めました。
brew services restart mariadb