title: What does mysqld_safe do in my.cnf?
body: <p>Below is my MySQL config file.  I am trying to understand how it works.  What is the point of <code>[mysqld_safe]</code>?  Hasn't <code>[mysqld]</code> already start MySQL?  Why is the log-error and pid-file settings after it?</p>
  
  <pre><code>[mysqld]
  # Settings user and group are ignored when systemd is used (fedora &gt;= 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
  </code></pre>