1

在 shell 命令提示符下:

mysqladmin -u"username" -p"password" --default-character-set=utf8 CREATE my_db_schema

--default-character-set=utf8似乎没有效果,我不明白为什么。

数据库被创建,但字符集latin1与 collat​​ion latin1_swedish_ci

我发现了这个问题,这似乎是同一个问题,但即使我按照所选答案的建议尝试了非 root 用户,我也会得到相同的行为:

(如果这有什么不同,我正在使用 Windows 和 MariaDB)


我已经尝试过这些 mysqladmin.exe 客户端:

  1. MariaDB 5.3.2 for Win32 (ia32) 与默认字符集latin1 (无 .ini)
  2. MySQL 5.0.77 for linux-gnu (i686) 与默认字符集utf8

在这两种情况下,--default-character-set=utf8或者--default-character-set=latin1不要覆盖 MySQL 服务器的 .ini/.cnf 设置

4

3 回答 3

1

作为一种解决方法,我建议运行:

echo "CREATE DATABASE my_db_schema DEFAULT CHARACTER SET utf8" | mysql -uusername -ppassword
于 2012-03-22T15:16:34.663 回答
0

从表面上看,我会说这似乎是一个 mysqladmin 错误。我会让 MariaDB 开发人员知道这件事。

http://kb.askmonty.org/en/reporting-bugs有关于报告错误的一般说明(忽略关于使用 mysqlbug 脚本的部分,因为它在 Windows 上不可用)。

PS 如果该错误存在于 MariaDB 中,它可能也存在于 MySQL 中。

于 2012-03-22T20:34:04.613 回答
0

--default-character-set=utf8似乎没有效果,我不明白为什么。

数据库被创建,但字符集latin1与 collat​​ion latin1_swedish_ci

此选项在创建时不会影响数据库、表或列的特性。

default-character-set是与服务器连接的字符集——它确保您从数据库中选择的值以正确的编码传递给客户端以进行显示。

于 2016-01-22T06:15:13.527 回答