【问题标题】:Problems setting database character set using mysqladmin使用 mysqladmin 设置数据库字符集的问题
【发布时间】:2012-04-07 04:22:41
【问题描述】:

在 shell 命令提示符下:

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

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

已创建数据库,但字符集为 latin1,排序规则为 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 设置。

【问题讨论】:

  • 我猜这是一个错误,该功能不起作用。

标签: mysql mariadb mysqladmin


【解决方案1】:

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

echo "CREATE DATABASE my_db_schema DEFAULT CHARACTER SET utf8" | mysql -uusername -ppassword

【讨论】:

  • 我觉得自己很笨,但是:ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '"CREATE DATABASE my_db_schema DEFAULT CHARACTER SET utf8"' at line 1
  • 你不包括外部双引号是吗?
  • 根据您最后的评论,我无法确定您是否希望我这样做。但是,我逐字复制了您的代码。
  • 您能否尝试通过键入mysql -uusername -ppassword 并在提示符处输入CREATE DATABASE my_db_schema DEFAULT CHARACTER SET utf8; 来调出MySQL 控制台,看看您是否仍然收到相同的错误消息?
  • 在 Windows 上,您关于使用 MySQL 控制台键入的最后一条评论:CREATE DATABASE my_db_schema DEFAULT CHARACTER SET utf8; 有效,但您的原始命令行在 Windows 上有效。但是,它确实在 Unix 上完美运行,但我仍然没有适用于 Windows 的命令行。
【解决方案2】:

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

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

附:如果该错误存在于 MariaDB 中,那么它很可能也存在于 MySQL 中。

【讨论】:

    【解决方案3】:

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

    已创建数据库,但字符集为 latin1,排序规则为 latin1_swedish_ci

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

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

    【讨论】:

      猜你喜欢
      • 2013-04-05
      • 1970-01-01
      • 2018-03-04
      • 2019-02-22
      • 1970-01-01
      • 2022-01-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多