2012-07-30 75 views
0

我似乎与我的MySQL守护进程和全球可写的配置文件中的一个问题被忽略:SMySQL守护进程的问题

这里的输出,当我运行mysqld的为用户的MySQL:

bash-4.2$ mysqld 
Warning: World-writable config file '/etc/mysql/my.cnf' is ignored 
120730 17:57:34 [Note] Plugin 'FEDERATED' is disabled. 
120730 17:57:34 InnoDB: The InnoDB memory heap is disabled 
120730 17:57:34 InnoDB: Mutexes and rw_locks use GCC atomic builtins 
120730 17:57:34 InnoDB: Compressed tables use zlib 1.2.5 
120730 17:57:34 InnoDB: Using Linux native AIO 
120730 17:57:34 InnoDB: Initializing buffer pool, size = 128.0M 
120730 17:57:34 InnoDB: Completed initialization of buffer pool 
InnoDB: Unable to lock ./ibdata1, error: 11 

这是我的“的my.cnf”文件的内容:

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

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

[mysqld] 

user  = mysql 
pid-file  = /var/run/mysqld/mysqld.pid 
socket   = /var/run/mysqld/mysqld.sock 
port   = 3306 
basedir   = /usr 
datadir   = /var/mysql 
tmpdir   = /tmp 

key_buffer    = 16M 
thread_stack   = 128K 
thread_cache_size = 8 
#max_connections  = 100 
#table_cache   = 64 
#thread_concurrency  = 10 
query_cache_limit = 1M 
query_cache_size  = 1024M 
sort_buffer=512M 
thread_concurrency=32 
query_cache_type=2 
tmp_table_size=1G 

#log   = /var/log/mysql/mysql.log 
#log_slow_queries = /var/log/mysql/mysql-slow.log 
#long_query_time = 2 
#log-queries-not-using-indexes 
#server-id    = 1 
#log_bin      = /var/log/mysql/mysql-bin.log 
expire_logs_days  = 10 
max_binlog_size   = 100M 
#binlog_do_db   = include_database_name 
#binlog_ignore_db = include_database_name 
#skip-innodb 
# chroot = /var/lib/mysql/ 
[mysqldump] 
quick 
quote-names 
max_allowed_packet = 16M 

[mysql] 
#no-auto-rehash # faster start of mysql but no tab completition 

[isamchk] 
key_buffer    = 16M 

真的不知道要去哪里,没有人知道如何输出中详细的错误提示mysqld?或者甚至更好的如何解决这个问题?有任何想法吗?谢谢你们:)

好了,世界可写的配置文件是解决了,我需要现在这些错误帮助:

bash-4.2$ mysqld 
120730 18:18:23 [Warning] Can't create test file /var/mysql/ks23085.lower-test 
120730 18:18:23 [Warning] Can't create test file /var/mysql/ks23085.lower-test 
120730 18:18:23 [Note] Plugin 'FEDERATED' is disabled. 
mysqld: Table 'mysql.plugin' doesn't exist 
120730 18:18:23 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it. 
120730 18:18:23 InnoDB: The InnoDB memory heap is disabled 
120730 18:18:23 InnoDB: Mutexes and rw_locks use GCC atomic builtins 
120730 18:18:23 InnoDB: Compressed tables use zlib 1.2.5 
120730 18:18:23 InnoDB: Using Linux native AIO 
120730 18:18:23 InnoDB: Initializing buffer pool, size = 128.0M 
120730 18:18:24 InnoDB: Completed initialization of buffer pool 
120730 18:18:24 InnoDB: Operating system error number 13 in a file operation. 
InnoDB: The error means mysqld does not have the access rights to 
InnoDB: the directory. 
InnoDB: File name ./ibdata1 
InnoDB: File operation call: 'create'. 
InnoDB: Cannot continue operation. 

我不知道它是与未正确许可的目录做或别的什么东西,还是和上次一样的问题? :S

回答

2

my.cnf不应该是世界可写的(即** 6或** 7)权限。

这是一个安全漏洞。 MySQL将忽略具有此权限设置的文件。