web-dev-qa-db-ja.com

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

Djangoでmysqlデータベースに接続すると、エラーが発生します。

  1. Mysqlサーバーが実行されているはずです。

  2. /var/run/mysqld/mysqld.sockは存在しません。

  3. $ find / -name *.sock -type sを実行すると、/ tmp/mysql.sockとその他の無関係な出力のみが表示されます。

  4. /etc/my.cnfにsocket = /tmp/mysql.sockを追加しました。その後、mysqlを再起動し、Django Shellを終了して、mysqlデータベースに接続しました。それでも同じエラーが発生しました。

たくさん検索しましたが、どうすればいいのかわかりません。

どんな助けも素晴らしいです。前もって感謝します。

まあ、私はいくつかの方法を試しました。そしてそれは機能します。次のようにしました。

  1. socket = /tmp/mysql.sockを追加します。mysqlサーバーを再起動します。
  2. ln -s /tmp/mysql.sock /var/lib/mysqld/mysqld.sock

今日、別の問題に遭遇しました。 mysqlにログインできません。私はmysqlの初心者です。ですから、mysqlサーバーとクライアントは同じソケットを使用して通信していると思います。私はsocket = /var/mysqld/mysqld.sockをmy.cnfの[mysqld] [client]ブロックに追加します。

15
robert

「localhost」の代わりに「12.7.0.1」を使用します

DATABASES = {
   'default': {
      'ENGINE': 'Django.db.backends.mysql',
      'NAME': 'Django',
      'USER': 'root',
      'PASSWORD': '',
      'Host': '127.0.0.1',
      'PORT': '3306',
   }
}
22
Md. Ibrahim

フラスコでは、あなたはそれを使うかもしれません

app=Flask(__name__)

app.config["MYSQL_Host"]="127.0.0.1
app.config["MYSQL_USER"]="root"...

0