Chcete-li zobrazit všechny tabulky konkrétní databáze (například mydb
), proveďte toto:
USE mydb
SHOW TABLES;
Chcete-li zobrazit všechna pole, indexy, modul úložiště, možnosti tabulky, rozložení oddílů v mydb.mytable
, proveďte toto:
USE mydb
SHOW CREATE TABLE tblname\G
Chcete-li hromadně zobrazit všechny tabulky ve všech databázích, zde je skript:
MYSQL_USER=root
MYSQL_PASS=rootpassword
MYSQL_CONN="-u${MYSQL} -p${MYSQL_PASS}"
MYSQLDUMP_OPTIONS="--routines --triggers --no-data --all-databases"
mysqldump ${MYSQL_CONN} ${MYSQLDUMP_OPTIONS} > MySQLSchema.sql
less MySQLSchema.sql
Pokud chcete vidět konkrétní databázi (například mydb
), proveďte toto:
MYSQL_USER=root
MYSQL_PASS=rootpassword
MYSQL_CONN="-u${MYSQL} -p${MYSQL_PASS}"
DBTOSHOW=mydb
MYSQLDUMP_OPTIONS="--routines --triggers --no-data --databases ${DBTOSHOW}"
mysqldump ${MYSQL_CONN} ${MYSQLDUMP_OPTIONS} > MySQLSchema.sql
less MySQLSchema.sql
Toto by měl být nejrychlejší způsob, protože přístup k databázi information_schema může být poněkud pomalý, pokud je zde mnoho zaneprázdněných tabulek InnoDB.
Vyzkoušejte to !!!