windows 7啟動MySql報錯Table 'mysql.plugin' doesn't exist的解決方法
windows7 64位,安裝mysql5.5.27_win64,自定義安裝到D:/database/mysql,
在初始化最後一步,寫配置文件時總是“未響應”。結束進程,手工創建my.ini文件
[client]
port=3335
[mysql]
default-character-set=utf8
[mysqld]
# The TCP/IP Port the MySQL Server will listen on
port=3335
basedir="D:/database/mysql/"
datadir="D:/database/data/"
character-set-server=utf8
default-storage-engine=INNODB
# Set the SQL mode to strict
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
www.2cto.com
max_connections=100
query_cache_size=8M
table_cache=256
tmp_table_size=9M
thread_cache_size=8
myisam_max_sort_file_size=100G
myisam_sort_buffer_size=16M
key_buffer_size=9M
read_buffer_size=64K
read_rnd_buffer_size=256K
sort_buffer_size=256K
#*** INNODB Specific options ***
innodb_data_home_dir="D:/database/InnoDB/"
innodb_additional_mem_pool_size=2M
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=1M
innodb_buffer_pool_size=15M
innodb_log_file_size=10M
innodb_thread_concurrency=10
www.2cto.com
寫好配置文件後,我在cmd下嘗試mysqld直接啟動,但總是失敗,並在D:/database/data/中可以看到按時間做為文件名的錯誤日志,其中有兩條
Table 'mysql.plugin' doesn't exist
...............................................
[ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
在網上搜索了很多解決方法,逐一嘗試都沒能解決我的問題,後來在看到另外一篇文章:
http://www.BkJia.com/database/201209/158224.html
這篇文章並沒有直接解決這個問題,但給我帶來了啟發,我嘗試著按這種方法初始化表,但提示我沒有mysql表!!!
這篇文章中,明確的講“....在每個文件的最開始插入“use mysql;”......" 我按照這個方法做了,但卻提示沒有mysql表!
www.2cto.com
我再次回到mysql的安裝目錄下仔細的看了一下,在安裝目錄下有一個data目錄(D:/database/mysql/data),裡面就有一個mysql文件夾,這個就是默認的數據庫數據存儲位置。既然我修改了數據存放位置,我直接將這個data文件下的所有文件拷貝到D:/database/data/下面是否可行?
於是我將mysql安裝目錄默認數據存放路徑D:/database/mysql/data 文件夾下所有文件全部放入D:/database/data/,再次啟動mysqld,成功了!
對mysql數據庫實在是不了解呀,之前安裝都非常順利,第一次遇到這種問題,mark一下。