程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> mysql啟動提示mysql.host 不存在,啟動失敗的解決方法

mysql啟動提示mysql.host 不存在,啟動失敗的解決方法

編輯:關於MYSQL數據庫
error 日志當中的記錄:

[ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist

從發了帖子,只有人看,沒有人回復,看到這種情況只能自己解決問題了,自己動手豐衣足食嗎, 嗯。。。 你還別說,還真讓我解決了問題,人啊,都是逼出來的,....沒有辦法,這個問題對於高手可能是很簡單的問題 ,但是對我第一次摸mysql,確實怎麼也弄不懂的問題。
好了閒話不多說 說一下我解決的過程:

按照mysql的安裝步驟:
shell> groupadd mysql
shell> useradd -g mysql mysql
shell> gunzip < mysql-VERSION.tar.gz | tar -xvf -
shell> cd mysql-VERSION
shell> ./configure --prefix=/usr/local/mysql
shell> make
shell> make install
shell> scripts/mysql_install_db --user=mysql
shell> chown -R root /usr/local/mysql
shell> chown -R mysql /usr/local/mysql/var
shell> chgrp -R mysql /usr/local/mysql
shell> cp support-files/my-medium.cnf /etc/my.cnf
shell> /usr/local/mysql/bin/mysqld_safe --user=mysql &

這樣標准進行下來是沒有問題的,但在最後一步啟動mysql的時候我希望將數據庫的數據文件放在另外一個目錄下面,啟動命令修改為:
shell>/usr/local/mysql/bin/mysqld_safe --user=mysql --log-error=/u01/mysql/mysql_error/error --datadir=/u01/mysql/data

這個時候就出現問題了, 因為在進行初始化數據庫權限表的那一步的時候默認創建的權限表在默認目錄/usr/local/mysql/var下面,這就造成了,上面的錯誤無法找到 權限表:Can't open and lock privilege tables: Table 'mysql.host' doesn't exist

解決辦法 在運行初始化權限表的時候使用增加參數--datadir ,命令格式為:
shell> scripts/mysql_install_db --user=mysql --datadir=/u01/mysql/data
這樣問題就解決了。
這樣問題同樣也會出現 你將自己的數據庫的數據文件修改為別的目錄的時候,因為你沒有在相應的目錄下創建數據庫權限表,解決辦法就是你重新運行mysql_install_db 文件,重新生成數據庫權限表,但是相應的你也要重新建裡用戶,以及設置權限; 第二個辦法應該將老的權限表的文件拷貝倒相應數據庫表對應的目錄先即可,但是第二個辦法我沒有用過只是根據自己的想象猜的。如果有高手請給確認一下是否正確

MySQL 提示服務啟動失敗的解決辦法

以前經常碰到這個問題,但都是用以下辦法處理的,

先在添加刪除程序裡卸載MySQL,然後把原MySQL的目錄改名,再打開注冊表用F3循環查找“MySQL”,全部刪除,最後重啟機器再重新裝MySQL都可以搞定,但今天遇到的問題比特殊,按上面和下面的辦法全試過了依然不行,安裝到最後一到啟動那裡就失敗了,把所有正在運行的服務和軟件全部關掉,又連續重啟重裝了N次都是到那裡停止,後來干脆換個高版本兒試下,這次全部刪除後重裝到最後那一步時還是等了很長時間,最後竟然成功了,現在記錄下來,以後再遇到此類問題不用再郁悶了!

重裝是成功了,但是重啟後測試發現又出問題了,服務啟動不了,一直報錯如下:
在 本地計算機 無法啟動 MySQL 服務。
錯誤 1053: 服務沒有及時響應啟動或控制請求。

又研究了半天,最後終於搞定,發現他原來的計算機管理員用戶名裡有個$字符,心想不會是他的事兒吧,就建了一個正常的獨立計算機賬戶MySQLUSER,然後在進程裡把mysqld.exe結束,然後在MySQL所在的目錄上點右鍵屬性安全,添加MySQLUSER這個用戶並給完全控制權限,再打開服務管理器在MySQL服務上點右鍵,輸入剛才建立的賬號和密碼確定,如下圖!

最後再隨意重啟服務,重啟計算機再試,依然很順利,至此這個疑難問題算是徹底解決,問題根源就是那個系統管理員賬號內的$字符,呵呵。

附幾個常用的MySQL的下載地址和MySQL管理工具!

http://sys.7i24.com/soft/mysql5132.rar
http://sys.7i24.com/soft/mysql5158.rar
http://mysql.he.net/Downloads/MySQL-5.5/mysql-5.5.21-win32.msi

MySQL 5.5.12 官方版(For Windows 64位)
thunder://QUFodHRwOi8veGlhemFpLnhpYXphaWJhLmNvbS9Tb2Z0L00vTXlTUUxfNS41LjEyX3dpbng2NF9YaWFaYWlCYS56aXBaWg==

● Navicat for MySQL V9.0.15 綠色中文版_優秀的數據庫管理和開發工具
thunder://QUFodHRwOi8vd3d3dy4xMTkueGRvd25zLmNvbS91cGxvYWRGaWxlLzIwMTAtMTAvbmF2aWNhdF9mb3JfTXlTUUwucmFyWlo=


================以下是遇到此類問題時的常規處理辦法========================
mysql 安裝到最後一步時,start service 為失敗狀態 請問是什麼原因

使用services.msc打開服務窗口,查看MySQL service是否已經存在。如已經存在並已啟動,則先停止該服務,然後到注冊表("HKEY_LOCAL_MACHINE\SYSTEM \CurrentControlSet\Services")中刪除對應服務,並使用命令sc delete MySQL,然後繼續進行安裝,就能成功。
MYSQL安裝出現could not start the service mysql error:0處理
當各位在安裝、重裝時出現could not start the service mysql error:0的錯誤時,可以嘗試下面兩種方法。
一、方式1
MySQL安裝是出現could not start the service mysql error:0 提示錯誤,解決方法:
首 先,在管理工具->服務裡面將MySQL的服務給停止,然後打開cmd 進入你的MySQL bin目錄下,例如 C:\Program Files\MySQL\MySQL Server 5.0\bin 然後使用如下命令mysqld-nt -remove 然後就會顯示......success! 好了下面進入添加刪除程序,找到MySQL選擇卸載,記得選擇remove。最後將MySQL目錄刪除,還有數據庫的目錄也刪除。
一、方式2
查看服務中有沒有mysql,如果有將該服務停掉;
安裝mysql 5.1.33,在運行Server Instance Configuration wizard時的Execute configurattion步驟中的第三項Start Service進出錯,錯誤提示為Could not start the service MySQL (出現這種情況一般是因為裝過mysql,卸載不干淨造成的。卸載後重啟後再重裝。注意看下服務,如果未能卸載,可以用mysqld-nt -remove卸載)。
在控制面板中運行添加刪除程序,將mysql卸載;
卸載後打開注冊表,查看HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services 下的鍵值,如果有相關mysql鍵值(mysql、mysqladmin)則刪掉,即可;
重啟,將mysql的安裝殘余目錄刪掉 (查看服務,此時服務中已沒有mysql);
重新安裝mysql.安裝後先不要運行Server Instance Configuration wizard,重啟後在開始菜單中運行該向導,即可。
windowsxp系統 mysql-5.0.81
提示:1045 access denied for user 'root'@'localhost' using password yes
MySQL 5.1 安裝過程中報apply security setting錯誤的解決辦法 收藏
Mysql安裝錯誤apply security settings 解決方法
The security settings could not be applied to the database because the connection has failed with the following error.
Error Nr. 1045
Access denied for user 'root'@'localhost' (using password: YES)
If a personal firewall is running on your machine, please make sure you have opened the TCP port 3306 for connections. Otherwise no client application can connect to the server. After you have opened the port please press [Retry] to apply the security settings.
If you are re-installing after you just uninstalled the MySQL server please note that the data directory was not removed automatically. Therefore the old password from your last installation is still needed to connect to the server. In this case please select skip now and re-run the Configuration Wizard from the start menu.
MySQL 5.1 安裝過程中報apply security setting錯誤的解決辦法
1, 卸載MySQL
2, 刪除目錄 C:\Documents and Settings\All Users\Application Data\MySQL
3, 重新安裝MySQL 就 OK 啦
------------------------------------------
[MySQL] Could not start the service MySQL 解決方法
安裝mysql 5.1.33,在運行Server Instance Configuration wizard時的Execute configurattion步驟中的第三項Start Service進出錯,錯誤提示為Could not start the service MySQL (出現這種情況一般是因為裝過mysql,卸載不干淨造成的。卸載後重啟後再重裝。注意看下服務,如果未能卸載,可以用mysqld-nt -remove卸載)。
具體方法如下:
查看服務中有沒有mysql,如果有將該服務停掉;
在控制面板中運行添加刪除程序,將mysql卸載;
卸載後打開注冊表,查看HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services 下的鍵值,如果有相關mysql鍵值(mysql、mysqladmin)則刪掉,即可;
重啟,將mysql的安裝殘余目錄刪掉 (查看服務,此時服務中已沒有mysql);
重新安裝mysql.安裝後先不要運行Server Instance Configuration wizard,重啟後在開始菜單中運行該向導,即可。
PS:一種值得參考的方法
---------------------------------------------
msyql安裝到最後一步start service錯誤解決方法
1,到控制面板裡面先把mysql刪除.
2.到c盤C:\Program Files目錄下把mysql目錄刪除.
3.如果在其他盤還有設置目錄也要刪除.空目錄也要刪除
4.到regedit把注冊表
復制代碼 代碼如下:
HKEY_LOCAL_MACHINE/SYSTEM/ControlSet001/Services/Eventlog/Applications/MySQL
HKEY_LOCAL_MACHINE/SYSTEM/ControlSet002/Services/Eventlog/Applications/MySQL
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Eventlog/Applications/MySQL

有的話,全部刪除!
(技巧:用F3循環查找“mysql”)
5.如果任務管理器裡有關mysql內容也刪除
6,把防火牆關了
7,重新裝mysql(這裡我沒有重啟計算機)
重裝時候有必要的話,重啟計算機,停用IIS,和刪除temp裡的臨時文件.
實在不行的話,配置mysql時候,把mysql服務換個服務名.
******************************************************************************************
---------------------------
刪除項時出錯。
---------------------------
無法刪除 LEGACY_MYSQL51: 刪除項時出錯。
---------------------------
確定
---------------------------
解決辦法:注冊表項裡右鍵增加administrators所有權限
安裝mysql時可能產生cannot create windows service for mysql.error:0錯誤,錯誤的原因多數由於重新安裝mysql或者對mydql升級,使用MySQL Configuration Wizard而產生.
解決的方法:到regedit把注冊表,用F3循環查找“mysql”,全部刪除,重新裝mysql,即可。
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved