質問
phpMyAdminはデフォルトで照合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
これは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';
こちら。
これは古い投稿です。しかし、phpMyAdminを使用してデフォルトの文字セットを変更した方法は次のとおりです。
phpMyadminメインページ> [変数]タブ(サーバー変数と設定)> 「文字」を検索しました;すべての変数を" latin1"から変更しました「utf8」へ。 (phpMyAdmin v。3.5.7を使用したMAMPインストールの場合)
他の人が言ったように、これはMySQLの変数であり、phpMyAdmin固有の変数ではありません。
MySQL DB« change 照合データベースの名前|テーブルUnicodeをサポートするために utf8_general_ci
に。
構成設定ファイルも変更
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サーバーがUTF8およびファイル my.cnf
## UTF 8 Settings
collation_server=utf8_unicode_ci
character_set_server=utf8
@see
utf8mb4
の場合、 [mysqld]
セクションで以下を追加/変更します。
collation_server = utf8mb4_unicode_ci
character_set_server = utf8mb4
次に mysql
サービスを再起動します(Ubuntuの場合、コマンドは sudo service mysql restart
です)