2012-08-24 14 views
6

no puedo averiguar cual es la consulta se ejecute con el fin de ver el cotejo actual establecido para una base de datos MySQL.MySQL Query para descubrir la intercalación de base de datos por defecto actual (a través del cliente de línea de comandos)

Sé que puedo cambiarlo ejecución de una consulta como esta:

ALTER DATABASE db_name 
[[DEFAULT] CHARACTER SET charset_name] 
[[DEFAULT] COLLATE collation_name] 

pero no quiero hacerlo sin conocer el valor actual.

Creo que es posible porque en phpmyadmin puede ver el valor actual en la pestaña de operación de su base de datos, pero necesito hacerlo a través del cliente de línea de comandos y después de buscar en Google no encontré respuestas.

Probablemente voy a abrir el código phpMyAdmin para descubrirlo .. antes de hacerlo, ¿alguien sabe cual es la pregunta correcta?

Gracias de antemano.

Respuesta

13

Entendido por mí mismo, mirando el código phpmyadmin.

Dependiendo de la versión de MySQL, para ejecutar la consulta es la siguiente:

SELECT DEFAULT_COLLATION_NAME FROM data_dictionary.SCHEMAS WHERE SCHEMA_NAME = 'nameOfMyDb' LIMIT 1; 

o

SELECT DEFAULT_COLLATION_NAME FROM information_schema.SCHEMATA WHERE SCHEMA_NAME = 'nameOfMyDb' LIMIT 1; 
5
show variables like "%collat%" 
+0

Gracias, es interesante, pero creo que estos son los valores por defecto de la configuración de MySQL, que se utiliza por defecto cuando estás creando un nuevo db (supongo). ¿Qué pasa con una base de datos específica? – lucke84

Cuestiones relacionadas