Bug #70478 /etc/init.d/mysql doesnt start with different data and log directories in my.cnf
Submitted: 1 Oct 2013 16:05 Modified: 28 Nov 2013 17:51
Reporter: Andre Skunde Email Updates:
Status: Not a Bug Impact on me:
None 
Category:MySQL Server: Packaging Severity:S1 (Critical)
Version:5.6.14 OS:Linux (OEL 6.4)
Assigned to: CPU Architecture:Any
Tags: Server: Installing

[1 Oct 2013 16:05] Andre Skunde
Description:
after successfull database creation with mysql_create_db cannot start /etc/init.d/mysql

How to repeat:
* delete any log,data and configuration files from standard rpm installation in /var/lib/mysql
* create your own /etc/my.cnf with different directories for data and log files, for example
#myisam
datadir                 = /mydata/data
log-bin                 = /mylog/data_log/log-bin
log-bin-index           = /mylog/data_log/log-bin
#innodb
innodb_data_home_dir                    = /mydata/ibdata
innodb_log_group_home_dir               = /mylog/ibdata_log
* mysql_create_db --defaults-file=/etc/my.cnf
* mysqld_safe --defaults-file=/etc/my.cnf --> start up like expectede,everything ok
* /etc/init.d/mysql start fails with
131001 17:05:24 mysqld_safe Starting mysqld daemon with databases from /mydata/data
2013-10-01 17:05:24 10543 [Warning] Can't create test file /mydata/data/o003mysql56p.lower-test
2013-10-01 17:05:24 10543 [Warning] Can't create test file /mydata/data/o003mysql56p.lower-test
/usr/sbin/mysqld: Can't change dir to '/mydata/data/' (Errcode: 13 - Permission denied)
2013-10-01 17:05:24 10543 [ERROR] Aborting
[1 Oct 2013 16:44] Andre Skunde
without separate innodb_data_home_dir /etc/init.d/mysql starts successful
[2 Oct 2013 16:21] Valeriy Kravchuk
Do you have SELinux enabled?
[8 Oct 2013 18:35] Sveta Smirnova
Thank you for the report.

Please provide output of `ls -R /mydata` and inform if you use SELinux.
[9 Nov 2013 1:00] Bugs System
No feedback was provided for this bug for over a month, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
[27 Nov 2013 20:07] Andre Skunde
SELinux was enabled. After disabling SELINUX mysql service starts successful.
#ls -R /mydata:
/mydata:
data  data_log  ibdata  ibdata_log  lost+found

/mydata/data:
auto.cnf  mysql  performance_schema

/mydata/data/mysql:
columns_priv.frm   help_category.MYD       ndb_binlog_index.MYD  servers.MYI                time_zone_leap_second.MYI
columns_priv.MYD   help_category.MYI       ndb_binlog_index.MYI  slave_master_info.frm      time_zone.MYD
columns_priv.MYI   help_keyword.frm        plugin.frm            slave_master_info.ibd      time_zone.MYI
db.frm             help_keyword.MYD        plugin.MYD            slave_relay_log_info.frm   time_zone_name.frm
db.MYD             help_keyword.MYI        plugin.MYI            slave_relay_log_info.ibd   time_zone_name.MYD
db.MYI             help_relation.frm       proc.frm              slave_worker_info.frm      time_zone_name.MYI
event.frm          help_relation.MYD       proc.MYD              slave_worker_info.ibd      time_zone_transition.frm
event.MYD          help_relation.MYI       proc.MYI              slow_log.CSM               time_zone_transition.MYD
event.MYI          help_topic.frm          procs_priv.frm        slow_log.CSV               time_zone_transition.MYI
func.frm           help_topic.MYD          procs_priv.MYD        slow_log.frm               time_zone_transition_type.frm
func.MYD           help_topic.MYI          procs_priv.MYI        tables_priv.frm            time_zone_transition_type.MYD
func.MYI           innodb_index_stats.frm  proxies_priv.frm      tables_priv.MYD            time_zone_transition_type.MYI
general_log.CSM    innodb_index_stats.ibd  proxies_priv.MYD      tables_priv.MYI            user.frm
general_log.CSV    innodb_table_stats.frm  proxies_priv.MYI      time_zone.frm              user.MYD
general_log.frm    innodb_table_stats.ibd  servers.frm           time_zone_leap_second.frm  user.MYI
help_category.frm  ndb_binlog_index.frm    servers.MYD           time_zone_leap_second.MYD

/mydata/data/performance_schema:
accounts.frm                                            events_waits_summary_by_user_by_event_name.frm
cond_instances.frm                                      events_waits_summary_global_by_event_name.frm
db.opt                                                  file_instances.frm
events_stages_current.frm                               file_summary_by_event_name.frm
events_stages_history.frm                               file_summary_by_instance.frm
events_stages_history_long.frm                          host_cache.frm
events_stages_summary_by_account_by_event_name.frm      hosts.frm
events_stages_summary_by_host_by_event_name.frm         mutex_instances.frm
events_stages_summary_by_thread_by_event_name.frm       objects_summary_global_by_type.frm
events_stages_summary_by_user_by_event_name.frm         performance_timers.frm
events_stages_summary_global_by_event_name.frm          rwlock_instances.frm
events_statements_current.frm                           session_account_connect_attrs.frm
events_statements_history.frm                           session_connect_attrs.frm
events_statements_history_long.frm                      setup_actors.frm
events_statements_summary_by_account_by_event_name.frm  setup_consumers.frm
events_statements_summary_by_digest.frm                 setup_instruments.frm
events_statements_summary_by_host_by_event_name.frm     setup_objects.frm
events_statements_summary_by_thread_by_event_name.frm   setup_timers.frm
events_statements_summary_by_user_by_event_name.frm     socket_instances.frm
events_statements_summary_global_by_event_name.frm      socket_summary_by_event_name.frm
events_waits_current.frm                                socket_summary_by_instance.frm
events_waits_history.frm                                table_io_waits_summary_by_index_usage.frm
events_waits_history_long.frm                           table_io_waits_summary_by_table.frm
events_waits_summary_by_account_by_event_name.frm       table_lock_waits_summary_by_table.frm
events_waits_summary_by_host_by_event_name.frm          threads.frm
events_waits_summary_by_instance.frm                    users.frm
events_waits_summary_by_thread_by_event_name.frm

/mydata/data_log:
log-bin.000001  log-bin.000002  log-bin.000003  log-bin.index

/mydata/ibdata:
ibdata1

/mydata/ibdata_log:
ib_logfile0  ib_logfile1

/mydata/lost+found:
[28 Nov 2013 17:51] Sveta Smirnova
Thank you for the feedback.

This means SELinux prevented MySQL from starting: you should tune its options. This is not MySQL bug.