Я використовую базу даних MySql з програмою Java, тепер я хочу надати програму комусь іншому.
Як експортувати структуру бази даних MySql без даних у ній, лише структуру?
Я використовую базу даних MySql з програмою Java, тепер я хочу надати програму комусь іншому.
Як експортувати структуру бази даних MySql без даних у ній, лише структуру?
Відповіді:
Ви можете зробити цей --no-data
параметр за допомогою команди mysqldump
mysqldump -u root -p --no-data dbname > schema.sql
--single-transaction
опції, якщо ви не хочете або не можете робити блоки столів.
CREATE DATABASE
команду. Щоб включити, замініть dbname
на --databases dbname
(скорочення:) -B dbname
. Потім для імпорту на інший сервер використовуйтеmysql -u root -p < schema.sql
Так, ви можете використовувати mysqldump
з --no-data
опцією:
mysqldump -u user -h localhost --no-data -p database > database.sql
Ви також можете витягти окрему таблицю з --no-data
можливістю
mysqldump -u user -h localhost --no-data -p database tablename > table.sql
Ви можете використовувати опцію -d з командою mysqldump
mysqldump -u root -p -d databasename > database.sql
Будьте обережні, хоча цей параметр --no-data не буде містити визначення перегляду. Отже, якщо у вас був такий вид, як наступний, створіть перегляд v1 select a
. id
AS id
,
a
. created_date
AS created_date
від t1; з опцією --no-data, визначення перегляду буде змінено на наступне створення view v1 select 1 AS id
, 1 AScreated_date
Ви можете використовувати інструмент адміністратора MYSQL безкоштовно http://dev.mysql.com/downloads/gui-tools/5.0.html
ви знайдете багато варіантів експорту ур MYSQL DataBase
Якщо ви використовуєте IntelliJ, ви можете увімкнути перегляд бази даних (Перегляд -> Вікно інструментів -> База даних)
Всередині цього виду підключіться до вашої бази даних. Потім ви можете клацнути правою кнопкою миші базу даних і вибрати "Скопіювати DDL". Інші ІДЕ можуть пропонувати подібну функцію.
Якщо ви хочете скинути всі таблиці з усіх баз даних і без даних (лише структури бази даних та таблиці), ви можете використовувати:
mysqldump -P port -h hostname_or_ip -u username -p --no-data --all-databases > db_backup.sql
Це створить файл .sql, який можна завантажити на mysql-сервер, щоб створити свіжу базу даних. У виробничих умовах випадків використання для цього не так багато, але я роблю це щотижня, щоб скидати сервери, пов’язані з демонстраційними веб-сайтами, тому що б не зробили користувачі протягом тижня, у понеділок вночі все повертається до "нового": )
shell> mysqldump --no-data --routines --event test> dump-defs.sql
mysqldump
найкраща відповідь. MySQL Administrator покинутий, а MySQL Workbench все ще досить баггі.