2011-11-05 19 views
33

我試圖連接到我的數據庫在Ubuntu遠程而是試圖mysql -u root -p當我收到錯誤消息:MySQL的my.cnf文件 - 發現選項前沒有組

找到選項,而不在配置文件前組:/etc/mysql/my.cnf在行:1個

my.cnf中的樣子:

[mysqld] 
user  = mysql 
socket  = /var/run/mysqld/mysqld.sock 
port  = 3306 
basedir  = /usr 
datadir  = /var/lib/mysql 
tmpdir  = /tmp 
bind-address  = 0.0.0.0 
key_buffer  = 16M 
max_allowed_packet = 16M 
thread_stack  = 192K 
thread_cache_size  = 8 
myisam-recover   = BACKUP 
query_cache_limit = 1M 
query_cache_size  = 16M 
log_error    = /var/log/mysql/error.log 
expire_logs_days = 10 
max_binlog_size   = 100M 

[client] 
port  = 3306 
socket  = /var/run/mysqld/mysqld.sock 

[mysqld_safe] 
socket  = /var/run/mysqld/mysqld.sock 
nice  = 0 

[mysqldump] 
quick 
quote-names 
max_allowed_packet = 16M 

[mysql] 

[isamchk] 
key_buffer  = 16M 
+1

這與在Ubuntu上使用mysql安裝的默認my.cnf看起來很不一樣。您是否嘗試從默認文件開始並逐漸添加自定義項? –

+0

我剛剛刪除了註釋並移動了代碼 – Afra

+0

我認爲默認文件看起來有點不同。 – Emma

回答

21

檢查文件的charset編碼,確保它是ASCII碼。例如,使用'od'命令開始查看是否有UTF-8 BOM。

+4

大聲笑............ -.- – Afra

+17

補充說明:缺少[mysqld]也會導致錯誤。 – chanux

+0

@chanux這是我的問題,即使我添加的變量具有全局範圍。謝謝! – Purefan

10

這是因爲字母或數字盈的的[mysqld]只是檢查leeters或之前的[mysqld]

可能像

0的[mysqld]那麼這個錯誤的數字什麼不是必需的會發生

+2

是的,配置文件中有一個隨機的+字符。謝謝! –

+0

對我來說,它最終成爲了在開始註釋過程之前沒有#的文件開頭的註釋! – Kzqai

+0

@Kzqai看起來像是我的問題。謝謝! –

27

只需添加的[mysqld]作爲/etc/mysql/my.cnf文件

然後

須藤的mysqld的第一線stop sudo mysqld start

+0

他的my.cnf已經有了[mysqld] ...你的回答對那些沒有這一行的人很有用。 – drochora

相關問題