![](/img/trans.png)
[英]MySQL Error from AWS Python Lambda Client (2004 (HY000): Can't create TCP/IP socket (97))
[英]mysql error : ERROR 1018 (HY000): Can't read dir of '.' (errno: 13)
當我嘗試在 mysql 中查看數據庫時出現此錯誤:
ERROR 1018 (HY000): Can't read dir of '.' (errno: 13)
這會阻止我的應用程序顯示...
我的 Django 調試器說:
(2002, "Can't connect to local MySQL server through socket '/var/lib/mysql/my_database' (13)")
這是我的設置文件:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
'NAME': 'my_database', # Or path to database file if using sqlite3.
'USER': 'root', # Not used with sqlite3.
'PASSWORD': '****', # Not used with sqlite3.
'HOST': '', # Set to empty string for localhost. Not used with sqlite3.
'PORT': '3306', # Set to empty string for default. Not used with sqlite3.
什么會導致問題?
提前致謝
您需要為目錄設置所有權和權限:
chown -R mysql:mysql /var/lib/mysql/ #your mysql user may have different name
chmod -R 755 /var/lib/mysql/
注意: -R
使命令遞歸 - 如果/var/lib/mysql/
中沒有子目錄,您可以省略它。
這應該適用於 Mac 用戶:
sudo chown -R mysql:mysql /usr/local/mysql/
sudo chmod -R 755 /usr/local/mysql/
如果這不起作用,請嘗試運行which mysql
以查看您的 mysql 安裝位置,然后將上面命令中的/usr/local/mysql/
替換為“bin”目錄之前的內容。
例如,在我which mysql
產生以下輸出:
/usr/local/mysql/bin/mysql
所以我的路徑是/usr/local/mysql/
在 CentOS/RedHat 上,你應該在不同的路徑上做同樣的事情:
chown -R mysql:mysql /data/mysql/
chmod -R 755 /data/mysql/
chown -R mysql:mysql /var/lib/mysql/
chmod -R 755 /var/lib/mysql/
我可以確認這兩個 chmod 語句對我有用(Webmin 沒有看到數據庫,也沒有顯示表)但是我不確定為什么在用 MySQL 設置了大約兩打服務器(Centos)之后我必須這樣做過去幾年。
osx high sierra 使用以下命令解決問題:
chown -R mysql:mysql /usr/local/mysql
如果你使用 homebrew 安裝了 mariadb,你可以為 OS X 運行以下命令
sudo chown -R mysql:mysql /var/lib/var/mysql/
sudo chmod -R 777 /usr/local/var/mysql/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.