MySQL守护进程问题

时间:2012-07-30 16:08:20

标签: mysql database daemon dedicated-server

我似乎遇到了我的MySQL守护程序和一个被忽略的全局可写配置文件的问题:S

这是我以用户mysql运行mysqld时的输出:

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

1 个答案:

答案 0 :(得分:2)

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

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