萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> mysql Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’

mysql Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’

今天在linux中安裝了mysql但在連接時出現Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’提示,下面我總結了一些解決辦法和用百度搜索的一些參數文檔。

linux 環境下。所有數據庫以及用戶信息的存放位置可以在(vim /etc/my.cnf)查看[datadir=/usr/local/mysql_data ].

讀取不到數據庫信息(原因:移動datadir過程中權限也改變了[chown mysql:mysql -R datadir]) ,datadir是你的存放路徑。
 

 代碼如下 復制代碼 ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’

(2),解決方法[查看是不是存在該文件。修改相應的路徑 vim /etc/my.cnf,查看是不是權限不對.ls -l ].

 代碼如下 復制代碼 ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’

(111),解決方法[修改相應的路徑 vim /etc/my.cnf]

添加下面這段:

 代碼如下 復制代碼

port            = 3306
socket          = /var/lib/mysql_data/mysql.sock


mysql 數據表使用中,錯誤提示:”martin” is marked as crashed and should be repaired
解決方法:

進入mysql的data目錄,在命令行執行:myisamchk -c -r martin.MYI


mysql允許遠程連接方法:在添加mysql用戶的時候host選現修改成”%”就可以了。
以後遇到的mysql問題會一並添加上來.


網絡上其它 方法


問題終於解決:

方法:    修改/etc/my.conf:

 代碼如下 復制代碼

[mysqld]
datadir=/usr/local/mysql/data
socket=/var/lib/mysql/mysql.sock

[mysql.server]
user=mysql
basedir=/usr/local/mysql

If there is not currently a section called [client], add one at the bottom of the file and copy the socket= line under the [mysqld] section such as:

[client]
socket=/var/lib/mysql/mysql.sock

發現依舊如此,運行/etc/init.d/mysql start

報錯:Starting MySQLCouldn't find MySQL manager or server
是mysqld服務沒啟,運行

 代碼如下 復制代碼 /usr/local/mysql/bin/mysqld_safe

問題解決了

官網的一點解決辦法


if you are new to installing mysql server you might probably face this error quite often if you type mysql in the shell prompt.

 代碼如下 復制代碼

> mysql
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'

To fix:

First start the mysql daemon, then type mysql

 代碼如下 復制代碼

> /etc/init.d/mysqld start
> mysql

Bingo! It worked for me!

To update mysql root password

 代碼如下 復制代碼

mysql> USE mysql;
mysql> UPDATE user SET Password=PASSWORD('new-password') WHERE user='root';
mysql> FLUSH PRIVILEGES;

To add a new user to mysql

1. First login as root then create a database ‘demo’

> mysql -u root -p

 代碼如下 復制代碼 Enter password:
mysql> create database demo;

After that create a new user named ‘guest’ with password ‘guest’ with all previleges assigned to demo database;

 代碼如下 復制代碼

mysql> GRANT ALL PRIVILEGES ON mytest.* TO 'guest'@'localhost' IDENTIFIED BY 'guest' WITH GRANT OPTION;

Then exit mysql and connect through username guest;
That should work!

Note:  This could happen, if you run out of your disk space.  Check your disk space.

copyright © 萬盛學電腦網 all rights reserved