Heim  >  Artikel  >  Datenbank  >  Zusammenfassung der Mydumper/Myloader-Nutzung

Zusammenfassung der Mydumper/Myloader-Nutzung

PHP中文网
PHP中文网Original
2017-06-20 15:37:362824Durchsuche
mydumper-Installation:
mydumper-Prinzip:
myloader-Prinzip:
1 🎜>
1. Starten Sie 16 Sicherungsprozesse, sichern Sie alle Bibliotheken und binären Protokolldateien im angegebenen Verzeichnis /docker /mydumper/all_backup
mydumper -u root -p root123 --threads=16 -o /docker/mydumper/all_backup
Das --threads=16 gibt hier die Anzahl der 16 zu aktivierenden Backup-Threads an. Dies kann durch die Anzeige der Prozessliste in MySQL angezeigt werden.
Nachdem die Sicherung abgeschlossen ist, verfügt jede Tabelle über zwei Dateien:
Eine davon ist die Tabellenstrukturdatei „database.table-schema.sql“; Eine davon sind die Tabellendaten Dateidatenbank .table.sql.
Es gibt auch Metadaten einer binären Protokolldatei.
$
Katzenmetadaten
Dump gestartet am: 15.06.2017 10:57:24
MASTERSTATUS ANZEIGEN:
Protokoll: mysql-bin.000025
Pos: 681395159
GTID:6fbc72af-348e-11e7-865c-fa163e5807c3:1-22,
ad9b252 9-348d- 11e7 -bef0-fa163e9e3c14:1-2663607
SLAVE STATUS ANZEIGEN:
Host: 10.157.24.87
Protokoll: mysql-bin.000047
Pos: 144635857
GTID:6fbc72af-348e-11e7-865c-fa163e5807c3:1-22,
ad9b2529-348d-11e7-bef0-fa163e9e3. c14 :1-2663607
Fertiggestellter Dump am: 2017-06-15 10:58:50
Hinweis: Wenn das Ausgabeverzeichnis nicht angegeben ist: mydumper - u root - p root123
generiert standardmäßig automatisch das Verzeichnis export-20170615-105920 (Exportjahr, Monat, Tag-Stunde, Minute und Sekunde)
2. Sichern Sie alle Bibliotheken. Gehen Sie zum angegebenen Ordner und komprimieren Sie die Sicherungsdatei (dieser Sicherungskomprimierungsprozess nimmt zu viel Zeit in Anspruch)
mydumper -u root -p root123 - c -o /docker/mydumper/all_backup_compress
komprimiert sowohl Tabellenstrukturdateien als auch Tabellendatendateien, wobei die binären Protokolldateien unverändert bleiben. Wie unten gezeigt, wird die Dateigröße von 17 GB auf 7,7 GB komprimiert .
root@dpsvstadbs05 11:20:02:mydumper$
du -sh *
17G
all_backup
7.7G
all_backup_compress
3. Sichern Sie die Tabellenstruktur aller Tabellen in der Sampson-Bibliothek, ohne Daten zu sichern, im angegebenen Ausgabeverzeichnis
/docker /mydumper/sampson -dmydumper -u root -p root123 -B sampson -d -o /docker/mydumper/sampson- d
Dann gibt es nur Metadaten und sampson.table-schema.sql-Dateien im Verzeichnis /docker/mydumper/sampson-d.
4. Sichern Sie die Daten aller Tabellen in der Sampson-Bibliothek, ohne die Tabellenstruktur zu sichern, im angegebenen Ausgabeverzeichnis
/docker/. mydumper/sampson-m Downmydumper -u root -p root123 -B sampson -m -o /docker/mydumper/sampson-m
Dann gibt es nur noch Metadaten und sampson.table.sql-Dateien im Verzeichnis /docker/mydumper/sampson-m.
5. Sichern Sie alle DSN- und T1-Tabellen in der Sampson-Bibliothek im angegebenen Ausgabeverzeichnis
/docker/mydumper/sampson-T Downmydumper -u root -p root123 -B sampson -T dsns,t1 -o /docker/mydumper/sampson-T
dann/ Im Verzeichnis docker/mydumper/sampson-T befinden sich Metadaten- und Sampson-Datenbankdateien sowie Sicherungsdateien von DSN- und T1-Tabellen.
Hinweis: Wenn die Sicherung im Hintergrund ausgeführt werden muss, können Sie --daemon hinzufügen, um den Exportbefehl im Hintergrund auszuführen.
2.
myloaderWiederherstellen
1. Stellen Sie die Sampson-Bibliothek aus dem vollständigen Verzeichnis wieder her:
myloader -u root -p root123 --threads=16 --database = sampson -d /docker/mydumper/all_backup
2. Stellen Sie die Tabellenstruktur der Sampson-Bibliothek aus dem Verzeichnis wieder her, in dem nur die Tabellenstruktur gesichert wurde
Gehen Sie zur Sampson-D-Bibliothek
: myloader -u root -p root123 --database=sampson-d -d /docker/mydumper/ sampson-d
3. Stellen Sie die Sampson-Bibliothek aus dem vollständigen Ordner
in der Samp-Bibliothek wieder her:
myloader -u root -p root123 --database=samp --source-db=sampson -d /docker/mydumper/all_backup
Hinweis: Es wird empfohlen, beim Sichern und Wiederherstellen den Parameter -v 3 hinzuzufügen, um detaillierte Protokolle anzuzeigen.
root@dpsvstadbs05 12:13:35:mydumper$ myloader -u root -p root123  -d /docker/mydumper/all_backup --database=huihui --source-db=lizhi -v 3
** Nachricht: 4 Threads erstellt
** Nachricht: Datenbank „huihui“ wird erstellt
** Nachricht: Tabelle „huihui“.`my1` wird erstellt
** Nachricht : Tabelle `huihui`.`my2` wird erstellt
** Meldung: Tabelle `huihui`.`my3` wird erstellt
** Nachricht: Tabelle `huihui`.`my4` wird erstellt
** Meldung: Tabelle „huihui“.`my5` wird erstellt
** Meldung: Tabelle „huihui“.`my6` wird erstellt
** Meldung: Tabelle „huihui“ wird erstellt `.`my7`
** Nachricht: Tabelle `huihui`.`t1` wird erstellt
** Nachricht: Thread 1 stellt `lizhi`.`my1` Teil 0 wieder her
** Nachricht: Thread 3 stellt `lizhi`.`my2` Teil 0 wieder her
** Nachricht: Thread 2 stellt `lizhi`.`my3` Teil 0 wieder her
** Nachricht: Thread 4 stellt `lizhi`.`my4` Teil 0 wieder her
** Nachricht: Thread 3 stellt `lizhi`.`my5` Teil 0 wieder her
** Nachricht: Thread 1 stellt `lizhi` wieder her .`my6` Teil 0
** Nachricht: Thread 4 stellt `lizhi` wieder her.`my7` Teil 0
** Nachricht: Thread 2 stellt `lizhi`.`t1` Teil 0 wieder her
** Meldung: Thread 2 wird geschlossen
** Meldung: Thread 1 wird geschlossen
** Meldung: Thread 4 wird geschlossen
** Nachricht: Thread 3 wird geschlossen
 
附:
 
mydumper参数详解
 
$ mydumper --helpUsage:
  mydumper [OPTION...] multi-threaded MySQL dumping

Help Options:  -?, --help                  Show help optionsApplication Options:  -B, --database              要备份的数据库,不指定则备份所有库
  -T, --tables-list           需要备份的表,名字用逗号隔开
  -o, --outputdir             备份文件输出的目录
  -s, --statement-size        生成的insert语句的字节数,默认1000000
  -r, --rows                  Try to split tables into chunks of this many rows. This option turns off --chunk-filesize
  -F, --chunk-filesize        Split tables into chunks of this output file size. This value is in MB
  -c, --compress              Compress output files压缩输出文件
  -e, --build-empty-files     如果表数据是空,还是产生一个空文件(默认无数据则只有表结构文件)
  -x, --regex                 Regular expression for 'db.table' matching 使用正则表达式匹配'db.table'
  -i, --ignore-engines        Comma delimited list of storage engines to ignore忽略的存储引擎,用逗号分割
  -m, --no-schemas            Do not dump table schemas with the data不备份表结构,只备份数据
  -d, --no-data               Do not dump table data备份表结构,不备份数据
  -G, --triggers              Dump triggers备份触发器
  -E, --events                Dump events
  -R, --routines              Dump stored procedures and functions备份存储过程和函数
  -k, --no-locks              不使用临时共享只读锁,使用这个选项会造成数据不一致
  --less-locking              Minimize locking time on InnoDB tables.减少对InnoDB表的锁施加时间
  -l, --long-query-guard      设定阻塞备份的长查询超时时间,单位是秒,默认是60秒(超时后默认mydumper将会退出)
  -K, --kill-long-queries     Kill long running queries (instead of aborting)杀掉长查询 (不退出)
  -D, --daemon                Enable daemon mode启用守护进程模式,守护进程模式以某个间隔不间断对数据库进行备
  -I, --snapshot-interval     dump快照间隔时间,默认60s,需要在daemon模式下
  -L, --logfile               使用的日志文件名(mydumper所产生的日志), 默认使用标准输出
  --tz-utc                    SET TIME_ZONE='+00:00' at top of dump to allow dumping of TIMESTAMP data when a server has data in different time zones or data is being moved between servers with different time zones, defaults to on use --skip-tz-utc to disable.
  --skip-tz-utc               
  --use-savepoints            使用savepoints来减少采集metadata所造成的锁时间,需要 SUPER 权限
  --success-on-1146           Not increment error count and Warning instead of Critical in case of table doesn't exist
  --lock-all-tables           Use LOCK TABLE for all, instead of FTWRL
  -U, --updated-since         Use Update_time to dump only tables updated in the last U days
  --trx-consistency-only      Transactional consistency only
  -h, --host                  连接的主机名
  -u, --user                  用来备份的用户名
  -p, --password              用户密码
  -P, --port                  连接端口
  -S, --socket                使用socket通信时的socket文件
  -t, --threads               开启的备份线程数,默认是4
  -C, --compress-protocol     压缩与mysql通信的数据
  -V, --version               显示版本号
  -v, --verbose               输出信息模式, 0 = silent, 1 = errors, 2 = warnings, 3 = info, 默认为2

 

myloader参数详解

 

$ myloader --helpUsage:
  myloader [OPTION...] multi-threaded MySQL loader

Help Options:  -?, --help                        Show help optionsApplication Options:  -d, --directory                   Directory of the dump to import之前备份好的现在需要导入的文件夹
  -q, --queries-per-transaction     Number of queries per transaction, default 1000每次事物执行的查询数量,默认是1000
  -o, --overwrite-tables            Drop tables if they already exist如果要恢复的表存在,则先drop掉该表,使用该参数,需要备份时候要备份表结构
  -B, --database                    An alternative database to restore into还原到指定的数据库
  -s, --source-db                   Database to restore选择被还原的数据库,将这个数据库数据还原到--database指定的数据库里
  -e, --enable-binlog               Enable binary logging of the restore data启用还原数据的二进制日志
  -h, --host                        连接的主机名
  -u, --user                        用来备份的用户名
  -p, --password                    用户密码
  -P, --port                        连接端口
  -S, --socket                      使用socket通信时的socket文件
  -t, --threads                     开启的备份线程数,默认是4
  -C, --compress-protocol           压缩与mysql通信的数据
  -V, --version                     显示版本号
  -v, --verbose                     输出信息模式, 0 = silent, 1 = errors, 2 = warnings, 3 = info, 默认为2

 

Das obige ist der detaillierte Inhalt vonZusammenfassung der Mydumper/Myloader-Nutzung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn