Centos-Mysql複製備份還原資料庫
備份單個資料庫的資料和結構(,資料庫名mydb)
mysqldump -u使用者名稱 -p密碼 -d 資料庫名 表名 > 指令碼名;
匯出整個資料庫結構和資料
mysqldump -h localhost -uroot -p123456 database > dump.sql
mysqldump -h `192.168.1.191` -uroot -p111111 js_namc>/tmp/js_namc.sql
匯出單個資料表結構和資料
mysqldump -h localhost -uroot -p123456 database table > dump.sql
mysqldump -h `172.16.7.16` -uroot -pnsv_2018 gx_nae_online ad_user > /tmp/ad_user.sql
匯出整個資料庫結構(不包含資料)
mysqldump -h localhost -uroot -p123456 -d database > dump.sql
匯出單個資料表結構(不包含資料)
mysqldump -h localhost -uroot -p123456 -d database table > dump.sql
還原單個資料庫(需指定資料庫)
mysql>use namc
mysql>source /tmp/js_namc.sql
常見選項:
--all-databases, -A: 備份所有資料庫
--databases, -B: 用於備份多個資料庫,如果沒有該選項,mysqldump把第一個名字引數作為資料庫名,後面的作為表名。使用該選項,mysqldum把每個名字都當作為資料庫名。
--force, -f:即使發現sql錯誤,仍然繼續備份
--host=host_name, -h host_name:備份主機名,預設為localhost
--no-data, -d:只匯出表結構
--password[=password], -p[password]:密碼
--port=port_num, -P port_num:制定TCP/IP連線時的埠號
--quick, -q:快速匯出
--tables:覆蓋 --databases or -B選項,後面所跟引數被視作表名
--user=user_name, -u user_name:使用者名稱
--xml, -X:匯出為xml檔案
為了方便快速複製一個資料庫,可以用以下命令
將db1資料庫的資料以及表結構複製到newdb資料庫
建立新的資料庫
mysql -u root -p123456
mysql>CREATE DATABASE `gx_namc_omline` DEFAULT CHARACTER SET UTF8 COLLATE UTF8_GENERAL_CI;
mysql>CREATE DATABASE IF NOT EXISTS tj_vote DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
複製資料庫,使用mysqldump及mysql的命令組合,一次性完成複製
mysqldump gx_namc -u root -pnsv_2018 --add-drop-table | mysql gx_namc_online -u root -pnsv_2018
注意-p123456引數的寫法:-p後面直接跟密碼,中間沒有空格
以上是在同一臺MySQL伺服器上覆制資料庫的方法。如果要複製到遠端另一臺MySQL伺服器上,可以使用mysql的“ -h 主機名/ip”引數。前提是mysql允許遠端連線,且遠端複製的傳輸效率和時間可以接受。
不在同一個mysql伺服器上
mysqldump db1 -uroot -p123456 --add-drop-table | mysql -h 192.168.1.22 newdb -u root -p123456
剛剛開始研究mysql資料庫時,經常遇到服務啟動失敗錯誤:
mysqld服務啟動失敗, Failed to restart mysqld.service: Unit not found.
-bash-4.2# service mysqld restart
Redirecting to /bin/systemctl restart mysqld.service
Failed to restart mysqld.service: Unit not found.
並不存在 mysqld 的服務,
複製程式碼
-bash-4.2# chkconfig --list
Note: This output shows SysV services only and does not include native
systemd services. SysV configuration data might be overridden by native
systemd configuration.
If you want to list systemd services use `systemctl list-unit-files`.
To see services enabled on particular target use
`systemctl list-dependencies [target]`.
aegis 0:off 1:off 2:on 3:on 4:on 5:on 6:off
agentwatch 0:off 1:off 2:on 3:on 4:on 5:on 6:off
iprdump 0:off 1:off 2:on 3:on 4:on 5:on 6:off
iprinit 0:off 1:off 2:on 3:on 4:on 5:on 6:off
iprupdate 0:off 1:off 2:on 3:on 4:on 5:on 6:off
jexec 0:off 1:on 2:on 3:on 4:on 5:on 6:off
mysql.server 0:off 1:off 2:on 3:on 4:on 5:on 6:off
netconsole 0:off 1:off 2:off 3:off 4:off 5:off 6:off
network 0:off 1:off 2:on 3:on 4:on 5:on 6:off
可見,服務名不是mysqld 而是 mysql.server
於是:
-bash-4.2# service mysql.server restart
Shutting down MySQL....[ OK ]
Starting MySQL.[ OK ]
相關文章
- MSSQL 備份資料庫還原SQL資料庫
- 【Mongodb】資料庫備份與還原MongoDB資料庫
- sqlserver資料庫的備份還原SQLServer資料庫
- 「MySQL」資料庫備份和還原MySql資料庫
- 「Oracle」Oracle 資料庫備份還原Oracle資料庫
- 批量備份和還原資料庫資料庫
- MySQL資料庫備份與還原MySql資料庫
- sqlserver資料庫備份,還原操作SQLServer資料庫
- Mysql備份和還原資料庫-mysqldumpMySql資料庫
- 資料庫單表備份還原shell資料庫
- 【RMAN】利用備份片還原資料庫資料庫
- 資料備份與複製
- mysql資料庫-備份與還原實操MySql資料庫
- java mysql 資料庫備份和還原操作JavaMySql資料庫
- Oracle資料庫備份還原詳解XKUSOracle資料庫
- 【RMAN】利用備份片還原資料庫(上)資料庫
- 【RMAN】利用備份片還原資料庫(中)資料庫
- 【RMAN】利用備份片還原資料庫(下)資料庫
- exp/imp備份與還原oracle資料庫Oracle資料庫
- 達夢資料庫的備份與還原資料庫
- SQL Server 資料庫備份還原和資料恢復SQLServer資料庫資料恢復
- oracle sqldeveloper選擇性複製備份資料庫OracleSQLDeveloper資料庫
- Mysql資料備份和還原MySql
- oracle資料還原與備份Oracle
- 資料庫的備份和還原不成功資料庫
- 啟明星資料庫批量備份與還原工具資料庫
- 使用mysqldump進行mysql資料庫備份還原MySql資料庫
- 【RMAN】利用備份片還原資料庫(中)-附加資料庫
- 華納雲 sqlserver資料庫備份及還原的方法SQLServer資料庫
- SQL Server 2008還原資料庫備份SQLServer資料庫
- 程式設計實現備份和還原資料庫程式設計資料庫
- SQL SERVER 2000 資料庫備份與還原SQLServer資料庫
- MySQL的資料備份與還原MySql
- Oracle備份與恢復系列(四)複製資料庫 續 手工複製資料庫的最簡操作Oracle資料庫
- mysql資料庫的備份以及表格資料之間的複製MySql資料庫
- 使用者管理的熱備份方式複製資料庫資料庫
- 【RAC】rac環境下的資料庫備份與還原資料庫
- 備份和還原 vCenter Server Appliance vPostgres 資料庫ServerAPP資料庫