2013-06-01 36 views
7

下面是我的MySQL配置文件。我想了解它是如何工作的。 [mysqld_safe]是什麼意思?還沒有[mysqld]已經啓動MySQL?爲什麼後面的日誌錯誤和pid文件設置?mysqld_safe在my.cnf中做什麼?

[mysqld] 
# Settings user and group are ignored when systemd is used (fedora >= 15). 
# If you need to run mysqld under different user or group, 
# customize your systemd unit file for mysqld according to the 
# instructions in http://fedoraproject.org/wiki/Systemd 
user=mysql 

datadir=/var/lib/mysql 
socket=/var/lib/mysql/mysql.sock 

# Disabling symbolic-links is recommended to prevent assorted security risks 
symbolic-links=0 

# Semisynchronous Replication 
# http://dev.mysql.com/doc/refman/5.5/en/replication-semisync.html 
# uncomment next line on MASTER 
;plugin-load=rpl_semi_sync_master=semisync_master.so 
# uncomment next line on SLAVE 
;plugin-load=rpl_semi_sync_slave=semisync_slave.so 

# Others options for Semisynchronous Replication 
;rpl_semi_sync_master_enabled=1 
;rpl_semi_sync_master_timeout=10 
;rpl_semi_sync_slave_enabled=1 

# http://dev.mysql.com/doc/refman/5.5/en/performance-schema.html 
;performance_schema 

innodb_strict_mode=on 
sql_mode=TRADITIONAL 
;sql_mode=STRICT_TRANS_TABLES,NO_ZERO_DATE,NO_ZERO_IN_DATE 
character-set-server=utf8 
collation-server=utf8_general_ci 

[mysqld_safe] 
log-error=/var/log/mysqld.log 
pid-file=/var/run/mysqld/mysqld.pid 

回答

6

您可以使用mysqldmysqld_safe啓動MySQL服務器。 mysqld_safe本身可能會嘗試執行mysqld,但也可能不會。見documentation的第一個結果在谷歌爲 mysqld_safe的,順便說一句):

mysqld_safe的是開始在Unix和NetWare一個mysqld服務器的推薦方式。 mysqld_safe添加了一些安全功能,例如發生錯誤時重新啓動服務器並將運行時信息記錄到錯誤日誌文件中。本節後面列出了NetWare特定的行爲。

[mysqld_safe]在配置文件中是應用的設置,當您使用mysqld_safe啓動MySQL服務器,而不是mysqld

+0

感謝Mifeet。是的,我在發佈這個問題之前查看了您引用的文檔。我不明白Section ['mysqld_safe]'適用於當我使用'mysqld_safe'啓動MySQL時應用的設置。這是否意味着'[mysqld]'下的其他設置不適用爲什麼MySQL使用'mysqld_safe'啓動?爲什麼在[mysqld]下添加日誌記錄會導致錯誤? – user1032531

+1

進一步閱讀後,'mysqld_safe將讀取選項文件中[mysqld],[server]和[mysqld_safe]部分的所有選項。仍然讓我困惑的是,即使正常啓動,我似乎也有'log-error =/var/log/mysqld.log'。 – user1032531

+0

@ user1032531不是默認值嗎?你有沒有嘗試在'[mysqld_safe]'中爲'log-error'設置一個不同的值?你的意思是什麼錯誤? – Mifeet