今天在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’
解決方法[查看是不是存在該文件,修改相應的路徑 vim /etc/my.cnf,查看是不是權限不對.ls -l ].代碼如下:
ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’
解決方法[修改相應的路徑 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:
- --Vevb.com
- [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.
新聞熱點
疑難解答