Um alle Tabellen einer bestimmten Datenbank (wie mydb
), tun Sie dies:
USE mydb
SHOW TABLES;
Um alle Felder, Indizes, Speicher-Engine, Tabellenoptionen, Partitionslayout in mydb.mytable
zu sehen , tun Sie dies:
USE mydb
SHOW CREATE TABLE tblname\G
Hier ist ein Skript, um alle Tabellen in allen Datenbanken in großen Mengen anzuzeigen:
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
Wenn Sie eine bestimmte Datenbank (wie mydb
), tun Sie dies:
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
Dies sollte der schnellste Weg sein, da der Zugriff auf die information_schema-Datenbank etwas langsam sein kann, wenn es viele ausgelastete InnoDB-Tabellen gibt.
Probieren Sie es aus !!!