mysql - 在 my.cnf 配置文件中使 MySQL 使用 utf-8

标签 mysql utf-8 character-encoding my.cnf

我在尝试更改 MySQL 中的字符集时遇到了麻烦。我正在尝试使用从“http://stackoverflow.com/questions/3513773/change-mysql-default-character-set-to-utf8-in-我的 cnf”。问题是,将此信息添加到我的文件(以及从互联网上获取的许多其他信息)后,MySQL 服务器无法启动(重新启动以实现更改时)。我收到此消息:

[root@tribals ~] # /etc/init.d/mysql restart
Shutting down MySQL.. SUCCESS!
Starting MySQL................................... ERROR!

更具体地说,我还将发布“my.cnf”文件的内容:

[mysql]
default-character-set=utf8

[client]
default-character-set=utf8

[mysqld]
max_connections=200
query_cache_type=1
query_cache_size=2M
query_cache_limit=1M
ft_min_word_len=2
ft_max_word_len=20
ft_stopword_file=''

我在文件底部添加了关于字符集的新内容,就在最后一行之后。这是我要添加的代码:

default-character-set = utf8    
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8

谢谢!

编辑:您好,这是日志中的内容:

111111 20:18:00  mysqld started 111111 20:18:00  InnoDB: Started; log sequence number 0 72790
111111 20:18:00 [Warning] './mysql/host' had no or invalid character set, and default character set is multi-byte, so character column sizes may have changed
111111 20:18:00 [Warning] './mysql/user' had no or invalid character set, and default character set is multi-byte, so character column sizes may have changed
111111 20:18:00 [Warning] './mysql/db' had no or invalid character set, and default character set is multi-byte, so character column sizes may have changed
111111 20:18:00 [ERROR] Fatal error: mysql.user table is damaged or in unsupported 3.20 format.
111111 20:18:00  mysqld ended

PD:抱歉,我是新手,找不到如何操作...

最佳答案

知道了!!!看起来这是更新 MySQL 版本时的一个问题,在我的例子中,从 3.2 到 4.1.22。问题是特权表也必须更新,但不知何故它们没有更新。因此,我通过 SSH 以 root 身份登录服务器并执行命令:

mysql_fix_privilege_tables --password=[your_root_pass]

就是这样!希望它能帮助其他人在我的情况下......

关于mysql - 在 my.cnf 配置文件中使 MySQL 使用 utf-8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8086444/

相关文章:

mysql - 如何在/etc/mysql/my.cnf中调优InnoDB性能

java - 无法使用 JDBC 驱动程序连接到 PostgreSQL

mysql - 需要根据 Group_concat 的结果连接两个表

javascript - 字符 "d' "becoming "d'”显示时

Haskell IO 俄语符号

mysql - 为什么将脚本加载到 mysql 时会出现此错误?

java - 如何使用 mvn :exec? 打印 IPA 字符

c++ - 在 C++ 中处理 UTF-8

python - Pandas to_csv : ascii can't encode character

javascript - 如何在 JavaScript 中将 DOM 节点文本值转换为 UTF-8?