日期:2014-05-16  浏览次数:20938 次

设置mysqld的默认字符集,出错[谢谢]
尝试在/etc/my.cnf中设置数据库的默认字符集,现在[client]下设置了客户端的默认字符集default-character-set=utf8,可以成功启动数据库,设置也生效了。然后尝试设置[mysqld]的默认字符集,在[mysqld]下添加default-character-set=utf8,这时就无法启动服务了:
启动命令:
[root@localhost ~]# service mysql start
Starting MySQL....The server quit without updating PID file (/home/mysql/localhost.localdomain.pid). [FAILED]

之前mysql是可以成功启动的,与selinux无关,与default-character-set=utf8在/etc/my.cnf中[mysqld]下的位置也无关。

err日志:
[root@localhost ~]# tail /home/mysql/*.err
120131 18:09:01 InnoDB: Waiting for the background threads to start
120131 18:09:03 InnoDB: 1.1.8 started; log sequence number 583161363
120131 18:09:03 [ERROR] /usr/sbin/mysqld: unknown variable 'default-character-set=utf8'
120131 18:09:03 [ERROR] Aborting

120131 18:09:03 InnoDB: Starting shutdown...
120131 18:09:04 InnoDB: Shutdown completed; log sequence number 583161363
120131 18:09:04 [Note] /usr/sbin/mysqld: Shutdown complete

120131 18:09:04 mysqld_safe mysqld from pid file /home/mysql/localhost.localdomain.pid ended

谢谢!


------解决方案--------------------
你的mysql具体的版本号是多少?
最新的mysql使用的不是这个变量。
------解决方案--------------------
[ERROR] /usr/sbin/mysqld: unknown variable 'default-character-set=utf8'

------解决方案--------------------
使用的版本的与变量是不一致的。