エラー: '/var/run/mysqld/mysqld.sock'ソケットを介してローカルMySQLサーバー(2)に接続できません。

エラー: '/var/run/mysqld/mysqld.sock'ソケットを介してローカルMySQLサーバー(2)に接続できません。

私はUbuntu 19.04ディストリビューションを実行しており、Dockerfileを持っています。 7段階に達したら。

Step 7/11 : RUN (/usr/bin/mysqld_safe &); sleep 5; mysqladmin -u root -proot create wordpress

我々は得た。

2019-10-09T12:18:34.365421Z mysqld_safe Directory '/var/run/mysqld' for UNIX socket file don't exists.
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
mysqladmin: connect to server at 'localhost' failed
error: 'Can't connect to local MySQL server through socket 
'/var/run/mysqld/mysqld.sock' (2)'
Check that mysqld is running and that the socket: '/var/run/mysqld/mysqld.sock' exists!

エラーメッセージを確認してください。mysqld_safe Directory '/var/run/mysqld' for UNIX socket file don't exists.

cookie@cookie-K501UX:~/code/docker$ ls -la /var/run/mysqld
total 8
drwxr-xr-x  2 mysql mysql  100 Oct  9 13:10 .
drwxr-xr-x 36 root  root  1060 Oct  9 13:10 ..
-rw-r-----  1 mysql mysql    6 Oct  9 13:10 mysqld.pid
srwxrwxrwx  1 mysql mysql    0 Oct  9 13:10 mysqld.sock
-rw-------  1 mysql mysql    6 Oct  9 13:10 mysqld.sock.lock

もちろん。そしてCheck that mysqld is running

$ sudo systemctl status mysql
● mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2019-10-09 13:26:21 BST; 8min ago

これは。ソケットファイルが存在し、MySQLデーモンが実行されている場合、何が問題ですか?

ベストアンサー1

問題は6秒以上が必要かもしれませんが、5秒だけ待っているという点です。

実行する前に、mysqladmin create wordpress MYSQLが準備されていることを確認する必要があります。

したがって、ループを使用できますmysqladmin ping

したがって、RUNコマンドは次のようになります。

RUN (/usr/bin/mysqld_safe &); \
     while( ! mysqladmin ping ) ;do  sleep 1 ; date ; done ; \
     mysqladmin -u root -proot create wordpress

おすすめ記事