CentOS7安裝MySQL5.6沖突總結


 

[root@localhost ypeng]# service mysql status

Redirecting to /bin/systemctl status mysql.service
Unit mysql.service could not be found.

出現以上安裝錯誤的原因是:系統已經可能是系統裝了其他版本的mysql-libs包或者是mysql數據庫文件導致不兼容。

可以將MySQL徹底卸載並清理MySQL的安裝文件。步驟如下

[root@localhost ypeng]# rpm -qa | grep -i mysql

MySQL-server-5.6.35-1.el7.x86_64
MySQL-client-5.6.35-1.el7.x86_64

[root@localhost mysql]# rpm -e MySQL-server-5.6.35-1.el7.x86_64

[root@localhost mysql]# rpm -e MySQL-client-5.6.35-1.el7.x86_64
[root@localhost mysql]# rpm -aq | grep -i mysql
[root@localhost mysql]# cd /var/lib
[root@localhost lib]# ll mysql/

-rw-rw----. 1 mysql mysql 50331648 Mar 14 09:22 ib_logfile0
-rw-rw----. 1 mysql mysql 50331648 Mar 14 09:22 ib_logfile1
drwx--x--x. 2 mysql mysql 4096 Mar 14 09:22 mysql
drwx------. 2 mysql mysql 4096 Mar 14 09:22 performance_schema
-rw-r--r--. 1 root root 111 Mar 14 09:22 RPM_UPGRADE_HISTORY
-rw-r--r--. 1 mysql mysql 111 Mar 14 09:22 RPM_UPGRADE_MARKER-LAST
drwxr-xr-x. 2 mysql mysql 6 Mar 14 09:22 test

如上所示,將mysql下的所有文件刪除
[root@localhost lib]# rm -rf mysql/
[root@localhost lib]# ll mysql/
ls: cannot access mysql/: No such file or directory

 

[root@localhost mysql]# rpm -ivh MySQL-server-5.6.35-1.el7.x86_64.rpm
warning: MySQL-server-5.6.35-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:MySQL-server-5.6.35-1.el7 ################################# [100%]

從 rpm版本 4.1 開始,在安裝或升級軟件包時會檢查軟件包的簽名。如果簽名校驗失敗,你就會看到類似以上的錯誤消息:
注:新的、只針對文件頭的簽名:錯誤消息:error: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
注:沒有安裝合適的鑰匙來校驗簽名,消息中就會包含 NOKEY:錯誤消息:warning:  Header V3 DSA/SHA1 
Signature, key ID 5072e1f5: NOKEY
由於yum安裝了舊版本的GPG keys造成的,解決辦法就是(設置后無效):
rpm --import /etc/pki/rpm-gpg/RPM*  
此簽名是檢驗安裝包的有效性和安裝性的。我直接跳過(安裝時不校驗,加--nosignature參數)檢驗安裝:
[root@localhost mysql]# rpm -ivh MySQL-server-5.6.35-1.el7.x86_64.rpm --nosignature
 
[root@localhost mysql]# service mysql start
Starting MySQL... ERROR! The server quit without updating PID file (/var/lib/mysql/localhost.localdomain.pid).

[root@localhost ~]# ll /var/lib/mysql
total 110640
-rw-rw----. 1 mysql mysql 56 Mar 14 09:30 auto.cnf
-rw-rw----. 1 mysql mysql 12582912 Mar 14 10:14 ibdata1
-rw-rw----. 1 mysql mysql 50331648 Mar 14 10:14 ib_logfile0
-rw-rw----. 1 mysql mysql 50331648 Mar 14 09:28 ib_logfile1
-rw-rw----. 1 mysql mysql 26560 Mar 14 10:14 localhost.localdomain.err
drwx--x--x. 2 mysql mysql 4096 Mar 14 09:28 mysql
drwx------. 2 mysql mysql 4096 Mar 14 09:28 performance_schema
-rw-r--r--. 1 root root 111 Mar 14 09:28 RPM_UPGRADE_HISTORY
-rw-r--r--. 1 mysql mysql 111 Mar 14 09:28 RPM_UPGRADE_MARKER-LAST
drwxr-xr-x. 2 mysql mysql 6 Mar 14 09:28 test

查看路徑:mysql-bin.index多余文件,auto.cnf和performance_schema等不存在(文件不全)。(以上為成功后的mysql數據庫目錄)
 
因為以前存在的MySQL卸載不干凈導致。 刪除和卸載(以下是的解決),然后重新安裝
 
再次啟動MySQL服務器

[root@localhost ypeng]# service mysql start
Starting MySQL... SUCCESS!

 

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

解決問題步驟: 
1.在mysql關閉的情況下:

/etc/init.d/mysql start -skip-grant-tables

2.接下來直接連接mysql,進入mysql命令行

mysql -u root p

mysql> UPDATE user SET Password=PASSWORD('123456') where USER='root';

mysql> FLUSH PRIVILEGES;

3.最后我們重啟mysql

/etc/init.d/mysql restart

可以連接了

mysql - u root -p

輸入123456 

 

 

 


免責聲明!

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



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