Создание дампа без определенных таблиц
mysqldump -u root -p --ignore-table=db_name.table_1 db_name > dump.sql
Создание дампа всех баз данных MySQL-сервера
С:\mysql\bin>mysqldump -u root -p --all-databases > all-databases.sql
Так-же есть возможность создавать дампы, только необходимых таблиц, определенной базы данных:
С:\mysql\bin>mysqldump -u dbadmin -pdbadminpass --no-data -B dbname --tables table1 table2 > ./tables-nodata.sql
Создаем бэкап и архивируем его с помощью gzip:
mysqldump -u USER -pPASSWORD DATABASE | gzip > /path/to/backup_file.sql.gz
Восстановление базы данных из бэкапа
С:\mysql\bin>mysql -u dbadmin -pdbadminpass test < table.sql
Восстановление базы данных из бэкапа в gzip
gunzip < db.gz | mysql -u dbadmin -p dbadminpass db_name
Запрос, выводящий список таблиц в базе данных
$sql = "SHOW TABLES FROM $dbname";
$result = mysql_query($sql);
while ($row = mysql_fetch_row($result)) {
echo "Таблица: {$row[0]}\n";
}
Скрипт, который делает бэкап всех баз данных mysql на сервере
for i in `mysql -u root -ppassword -e'show databases;' | grep -v information_schema | grep -v Database`; do mysqldump -u root -ppassword $i > `date +%Y-%m-%d`-$i; gzip `date +%Y-%m-%d`-$i;done
Теги - Mysql