[CentOs7]安裝mysql


摘要

作為一個開發者,首先最關心的莫非就是跟自己工作相關的,然后再以此去拓展。那么,這里將進行第一步mysql服務器的部署。

系列文章

在虛機中安裝CentOS

[CentOS]添加刪除用戶

[CentOs7]圖形界面

[CentOs7]安裝mysql

[CentOS7]安裝mysql遇到的問題

步驟

在使用命令

yum list mysql-server 安裝mysql的時候,發現沒有mysql的包。這時候,我們需要下載一個

下載包

wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

下載完成,安裝mysql-community-release-el7-5.noarch.rpm包

安裝mysql

sudo yum install mysql-server

等待安裝完成....

然后選擇Y

安裝完成后,mysql沒有密碼需要重置密碼才行。

 

mysql -u root

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

解決辦法

1、mysql服務未正常運行:

由於mysql的socket文件是由mysqld服務啟動時創建的,如果mysqld服務未正常啟動,socket文件自然也不會被創建,當然會找不到socket文件了。對於判斷mysql服務是否啟動,我們可以使用下面命令:

# 1、 端口是否打開
[root@aiezu.com ~]# lsof -i:3306
COMMAND   PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
mysqld  12207 mysql   14u  IPv4  52350      0t0  TCP *:mysql (LISTEN)
 
# 2、mysqld服務是否正在運行
[root@aiezu.com ~]# service mysqld status
mysqld (pid  4717) is running...

2、socket文件路徑在配置文件中設置不完整:

這一般是由於我們修改了mysql配置“/etc/my.cnf”引起的。比如我們修改了配置文件中“[mysql]”選項下的“socket”參數,而未指定“[client]”、“[mysql]”選項的“socket”參數,導致mysql使用默認的socket文件位置去尋找socket文件,從而導致未找到socket文件而引發此錯誤。

1、mysql服務未正常運行:

如果是服務未啟動,我們運行“service mysqld start”啟動服務即可。如果服務啟動不了,就去查看mysql服務日志,尋找原因並解決再啟動

[root@aiezu.com ~]# service mysqld start
Starting mysqld:                                           [  OK  ]
[root@aiezu.com ~]# lsof -i:3306
COMMAND   PID  USER   FD   TYPE    DEVICE SIZE/OFF NODE NAME
mysqld  14109 mysql   10u  IPv4 247183583      0t0  TCP *:mysql (LISTEN)
[root@aiezu.com ~]# service mysqld status
mysqld (pid  14109) is running...

2、完善mysql配置文件:

如果確認mysql服務正常運行,還提示文章標題的此錯誤,那就是“/etc/my.cnf”配置文件的問題了。解決辦法是修改“/etc/my.cnf”配置文件,在配置文件中添加“[client]”選項和“[mysql]”選項,並使用這兩個選項下的“socket”參數值,與“[mysqld]”選項下的“socket”參數值,指向的socket文件路徑完全一致。如下:

[mysqld]
datadir=/storage/db/mysql
socket=/storage/db/mysql/mysql.sock
...省略n行(愛E族)...
 
[client]
default-character-set=utf8
socket=/storage/db/mysql/mysql.sock
 
[mysql]
default-character-set=utf8
socket=/storage/db/mysql/mysql.sock

原文地址:http://www.aiezu.com/db/mysql_cant_connect_through_socket.html

如果仍解決不了問題,可嘗試下面的操作:

Check below things to fix the issue

  1. Check the permission of mysql data dir using below command

    ls -ld /var/lib/mysql/

  2. Check the permission of databases inside mysql data dir using below command

    ls -lh /var/lib/mysql/

  3. Check the listening network tcp ports using below command

    netstat -ntlp

  4. Check the mysql log files for any error using below command.

    cat /var/log/mysql/mysqld.log

  5. Try to start mysql using below command

    mysqld_safe --defaults-file=/etc/my.cf

重啟服務

service mysqld start

 

修改用戶root的密碼

mysql -uroot -p
Enter password: < 輸入/etc/mysql/debian.cnf文件中[client]節提供的密碼>

退出

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM