mysql5.5 報Can't open and lock privilege tables: Table 'mysql.host' doesn't exist


通過yum 的webstatic源安裝的mysql55w-server,然后用service mysqld start啟動時報

MySQL Daemon failed to start.
Starting mysqld: [FAILED]

的錯誤

tail -f /var/log/mysqld.log 查看mysqld日志發現報錯原因是Can't open and lock privilege tables: Table 'mysql.host' doesn't exist

之后通過運行mysql_install_db命令初始化書庫解決問題

 

完了之后,通過mysqladmin -u root password 123456這樣的命令來指定root賬號的密碼

 

 如果忘記密碼的話,可以:

service mysqld stop

mysqld_safe --user=root --skip-grant-tables

mysql -u root

use mysql

update user set password=password("new_pass") where user="root";

flush privileges;

來重新設置密碼

 

附注:

一、mysql安裝的時候,有一步是mysql_install_db --user=mysql,查了下是生成授權表,請問生成授權表的作用是什么?

答:1.生成授權表實際上是完成了mysql的初始化。你在執行這個腳本之后,mysql里就會出現名為mysql的庫。mysql庫里有常用的權限表等系統表。比如設置用戶權限的user表。

      2.后面的參數--user所指定的用戶是你想要運行mysqld進程用戶名。這個是可變的,不一定非要是mysql。設置這個用戶以后,所有通過mysqld進程創建的文件都會屬於這個用戶。網上的教程里多用mysql用戶是為了在生產環境中更方便管理。

 

二、安裝webstatic源

Centos 5.X
rpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rpm

CentOs 6.x
rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm

CentOs 7.X
rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

 

三、向服務器上傳文件可以用rz命令;從服務器獲取文件可以用sz命令


免責聲明!

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



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