Per quanto ne so, non è possibile eseguire ALTER TABLE
comandi sul tavoli in information_schema
. Invece probabilmente vorrai dare un'occhiata alle variabili character_set_*
. Si può vedere che le variabili sono impostate a cui valori nel server MySQL con un comando show variables
:
show variables like "character_set_%";
La variabile che ha a che fare con i meta dati in MySQL, come le information_schema
tabelle, è la variabile character_set_system
. Penso che il my.cnf
sia il posto giusto per impostarlo.
C'è più informazione in questa pagina: UTF-8 for Metadata.
Per le tabelle normali, si cambia il set di caratteri di una tabella con un comando ALTER TABLE
:
alter table some_table convert to character set utf8;
Per fare questo, è necessario disporre del privilegio "alter".
È possibile vedere quali privilegi il server MySQL supporta con un comando show privileges
e si può vedere quali privilegi sono concessi all'utente corrente con un comando show grants
.
fonte
2009-06-14 14:12:16
quello privilegi cosa ho bisogno per alterare database di sistema minima idea –
@MySQLDBA è necessario il privilegio "alter", si veda risposta cristiana –
fa al caso questo avvertimento prima di eseguire un comando di 'ALTER' > Se si utilizza ALTER TABELLA per convertire una colonna da un set di caratteri a un altro, > MySQL tenta di mappare i valori dei dati, ma se i set di caratteri sono incompatibili, potrebbe esserci una perdita di dati. [Manuale di riferimento MySQL] (http://dev.mysql.com/doc/refman/5.0/en/charset-column.html) –