题
在我看来,进口头文件表默认情况下的排序规则latin1_swedish_ci,我怎么变这样?
解决方案
在Mysql配置中,更改[mysqld]选项卡下的default-character-set。例如:
[mysqld]
default-character-set=utf8
不要忘记之后重新启动Mysql服务器以使更改生效。
其他提示
对于Linux:
-
您需要访问MySQL配置文件。
位置可以从/etc/mysql/my.cnf
到〜/ my.cnf
(用户目录)。 -
在
部分添加以下几行[mysqld]
:collation_server = utf8_unicode_ci character_set_server=utf8
-
重启服务器:
service mysqld restart
醇>
这不是一头文件的问题。
排序规则的一部分,最近MySQL的版本,必须设置的默认排序规则的服务器(或至少该数据库)改变这种行为。
转换已经进口表UTF-8,你可以做(在PHP):
$dbname = 'my_databaseName';
mysql_connect('127.0.0.1', 'root', '');
mysql_query("ALTER DATABASE `$dbname` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci");
$res = mysql_query("SHOW TABLES FROM `$dbname`");
while($row = mysql_fetch_row($res)) {
$query = "ALTER TABLE {$dbname}.`{$row[0]}` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci";
mysql_query($query);
$query = "ALTER TABLE {$dbname}.`{$row[0]}` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci";
mysql_query($query);
}
echo 'all tables converted';
代码段采取从 在这里,.
知道这是一个老帖子。但我通过phpMyAdmin更改默认字符集的方式是:
phpMyadmin主页> “变量”选项卡(服务器变量和设置)>搜索“字符”并改变了“latin1”中的所有变量。到“utf8”。 (在使用phpMyAdmin v.3.5.7的MAMP安装上)
正如其他人所说,这是MySQL的变量,而不是某些特定的phpMyAdmin。
MySQL数据库"改变 排序规则 名称的数据库|表 utf8_general_ci
为了支持Unicode。
改变 配置设置 文件还
XAMPP:注释 UTF 8 Settings
从配置文件" D:\xampp\mysql\bin\my.ini
## UTF 8 Settings
#init-connect=\'SET NAMES utf8\'
collation_server=utf8_unicode_ci
character_set_server=utf8
skip-character-set-client-handshake
character_sets-dir="D:/xampp/mysql/share/charsets"
MySQL server支持UTF8和以下行代码文件 my.cnf
## UTF 8 Settings
collation_server=utf8_unicode_ci
character_set_server=utf8
@看看
对于 utf8mb4
,在 [mysqld]
部分添加/更改以下内容:
collation_server = utf8mb4_unicode_ci
character_set_server = utf8mb4
然后重启 mysql
服务(对于Ubuntu命令是 sudo service mysql restart
)
不隶属于 StackOverflow