Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да архивирам цялата база данни на MySQL с всички потребители и разрешения и пароли?

Най-основно, командата mysqldump, която можете да използвате, е:

mysqldump -u$user -p$pass -S $socket --all-databases > db_backup.sql

Това ще включва базата данни mysql, която ще има всички потребителски/privs таблици.

Има недостатъци при стартирането на това в производствена система, тъй като може да причини заключване. Ако масите ви са достатъчно малки, това може да не окаже значително влияние. Първо ще искате да го тествате.

Въпреки това, ако използвате чиста среда InnoDB, можете да използвате --single-transaction флаг, който ще създаде дъмпа в една транзакция (вземете го), като по този начин предотвратява заключването на базата данни. Имайте предвид, че има ъглови случаи, в които първоначалният FLUSH TABLES команда, изпълнявана от дъмпа, може да заключи таблиците. Ако случаят е такъв, убийте дъмп и го рестартирайте. Бих препоръчал също, ако използвате това за архивиране, да използвате --master-data флаг също така, за да получите двоични координати на журнала от мястото, където е взето дъмпът. По този начин, ако трябва да възстановите, можете да импортирате дъмп файла и след това да използвате mysqlbinlog команда за повторно възпроизвеждане на двоичните регистрационни файлове от позицията, където е взето това изхвърляне.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Възстановяване на MySQL 8.0 Slave за репликация с помощта на Clone Plugin

  2. Многократно качване на изображения в Mysql база данни

  3. свързване към база данни Quickbooks чрез odbc с php?

  4. Възможно ли е да съхранявате снимки, звуци, видеоклипове в SQL база данни?

  5. Трябва ли да използвам подготвени изрази за MySQL в PHP PERFORMANCE-WISE?