cambia le regole di confronto predefinite in phpmyadmin
-
03-07-2019 - |
Domanda
Mi sembra che phpMyAdmin importi le tabelle per impostazione predefinita con regole di confronto latin1_swedish_ci, come posso cambiare?
Soluzione
Nella tua configurazione di Mysql cambia il set di caratteri predefinito operativo nella scheda [mysqld]. Ad esempio:
[mysqld]
default-character-set=utf8
Non dimenticare di riavviare il server Mysql in seguito per rendere effettive le modifiche.
Altri suggerimenti
Per Linux:
-
Devi avere accesso al file di configurazione di MySQL.
La posizione può variare da/etc/mysql/my.cnf
a~ / my.cnf
(directory utente). -
Aggiungi le seguenti righe nella sezione
[mysqld]
:collation_server = utf8_unicode_ci character_set_server=utf8
-
Riavvia il server:
service mysqld restart
Questa non è una domanda phpMyAdmin.
Le regole di confronto fanno parte delle recenti versioni di MySQL, è necessario impostare le regole di confronto predefinite del server (o almeno del database) per modificare tale comportamento.
Per convertire tabelle già importate in UTF-8 puoi farlo (in 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';
Snippet di codice tratto da qui .
so che questo è un vecchio post. Ma il modo in cui ho cambiato il set di caratteri predefinito tramite phpMyAdmin è stato:
pagina principale di phpMyadmin > Scheda Variabili (variabili e impostazioni del server) > cercato " carattere " e ho cambiato tutte le variabili da " latin1 " a "utf8". (su un'installazione MAMP con phpMyAdmin v. 3.5.7)
E come hanno detto gli altri, queste sono le variabili per MySQL e non alcune specifiche di phpMyAdmin.
MySQL DB & # 171; change Collation Nome di un database | Tabella a utf8_general_ci
inorder per supportare Unicode.
Modifica anche il file Impostazioni di configurazione
XAMPP:
decommenta UTF 8 Settings
dal file delle impostazioni di configurazione & # 171; 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"
Per il server MySQL per supportare UTF8 e la riga di codice sottostante nel file my.cnf
## UTF 8 Settings
collation_server=utf8_unicode_ci
character_set_server=utf8
@see
Per utf8mb4
, aggiungi / modifica quanto segue nella sezione [mysqld]
:
collation_server = utf8mb4_unicode_ci
character_set_server = utf8mb4
Quindi riavvia il servizio mysql
(per Ubuntu il comando è sudo service mysql restart
)