37

phpMyAdmin はデフォルトで照合 latin1_swedish_ci を使用してテーブルをインポートしているように思えますが、これを変更するにはどうすればよいですか?

4

8 に答える 8

22

Mysql 構成で、[mysqld] タブの下にあるデフォルトの文字セットを変更します。例えば:

[mysqld]
default-character-set=utf8

変更を有効にするために、後で Mysql サーバーを再起動することを忘れないでください。

于 2008-09-30T16:17:11.877 に答える
20

Linux の場合:

  1. MySQL 構成ファイルにアクセスできる必要があります。場所は(ユーザー ディレクトリ)から
    異なる場合があります。/etc/mysql/my.cnf~/my.cnf

  2. セクションに次の行を追加します[mysqld]

    collation_server = utf8_unicode_ci
    character_set_server=utf8
    
  3. サーバーを再起動します。

    service mysqld restart
    
于 2012-07-07T10:21:44.263 に答える
13

これは phpMyAdmin に関する質問ではありません。

照合は最近の 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';

ここから取られたコードスニペット。

于 2008-09-30T16:09:31.940 に答える
3
  1. my.iniこの文字列を(またはmy.cnf)に挿入します。
[mysqld]
collation_server = utf8_unicode_ci
character_set_server=utf8
  1. に追加config.inc.php
$cfg['DefaultConnectionCollation'] = 'utf8_general_ci';
  1. MySQLサーバーを再起動し、 PhpMyAdminがあるドメインの Cookie とデータを削除する必要があります。

  2. PhpMyAmdinでページをリロードし、結果を確認します

ここに画像の説明を入力

于 2019-09-02T17:55:03.243 に答える