mysql - 使用mysqladmin设置数据库字符集的问题

标签 mysql mariadb mysqladmin

在 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. 用于 linux-gnu (i686) 的 MySQL 5.0.77,默认字符集 utf8

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

最佳答案

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

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

关于mysql - 使用mysqladmin设置数据库字符集的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9825128/

相关文章:

mysql - 将 1 个表中的值插入到另一个错误

php - 如何将保存在服务器文件夹中的图像与 mySQL 数据库中的数据一起显示?

MySQL - 查询条件,仅当另一个查询条件没有返回结果时触发

mysql - mysqladmin 和 password() 函数之间的哈希值不同

mysql - 3 个表的 SQL 初学者查询逻辑

python - 将 Docker 群中运行的 Python 应用程序生成的数据保存在 Mysql 数据库中

mysql - 简单的 SELECT 查询对于大表来说很慢

MySQL:插入具有自动增量列的表后出现意外的 SELECT 结果

MySQL 表以不同的案例名称列出两次