批量建立資料庫和批量資料恢復

2021-09-20 20:48:04 字數 4198 閱讀 9319

近期公司有乙個資料庫需要遷移,但是裡面建立的資料庫比較多,我們採取指令碼將庫單獨備份,然後上傳到另一台主機,新建資料庫,然後恢復資料庫。將自己寫的幾個小指令碼貼上到此,

分庫壓縮備份1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

#/bin/sh

#version 0.1

myuser=mysqlback

[email protected]

#socket=/data/3306/mysql.sock

mylogin="mysql -u$myuser -p$mypass "

mydump="mysqldump -u$myuser -p$mypass  -b"

database="$($mylogin -e "show databases;"|egrep -vi "data|_schema|mysql")"#正則

fordbnamein$database

do

mydir=/data/backup/$dbname

[ ! -d $mydir ] && mkdir -p $mydir

$mydump $dbname|gzip >$mydir/$_$(date+%f).sql.gz

done

批量解壓縮

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

#/bin/bash

foriin`ls*.gz`

dogunzip  $i

done

解壓結果:

wl_smsgate_2017-04-12.sql

wl_smsgate_hx_2017-04-12.sql

wl_smsgate_ldkj_2017-04-12.sql

wl_smsgate_tt_2017-04-12.sql

wl_smsgate_dg_2017-04-12.sql

wl_smsgate_jjbs_2017-04-12.sql

wl_smsgate_pc_2017-04-12.sql

wl_smsgate_tt_lt_2017-04-12.sql

wl_smsgate_dxfj_2017-04-12.sql

wl_smsgate_jl_2017-04-12.sql

wl_smsgate_sb_2017-04-12.sql

批量建立資料庫

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

#/bin/bash

#fun create  database

mysqluser=root

mysqlpass=winnerlook123

mysqlcent="mysql -u $mysqluser -p$mysqlpass"

dabasename=`catdatabasename`

date2="_2017-04-12.sql"

fordatain$dabasename

do

$mysqlcent -e"create  database  if not exists $data default character  set utf8"

done

恢復資料

1

2

3

4

5

6

7

8

9

10

11

12

13

#/bin/bash

#fun create  database

mysqluser=root

mysqlpass=winnerlook123

mysqlcent="mysql -u $mysqluser -p$mysqlpass"

dabasename=`catdatabasename`

date2="_2017-04-12.sql"

fordatain$dabasename

do

$mysqlcent -e"use  $data  "&& $mysqlcent -e" source   /tmp/backup/$data$date2 "#恢復資料

done

然後檢查資料庫的資料字符集以及其資料條數。

批量建立資料庫

借助powershell,我們可以輕鬆地進行批量建立資料庫,下面將詳細介紹一下 接下來,我們可以使用如下的cmdlet來實現我們的目標 執行完之後,我們重新整理一下ssms的資料庫,3個資料庫均已建立ok 對於上面出現的提供程式上下文警告,我們可以使用 suppressprovidercontext...

批量建立Notes資料庫示例

下面為根據資料庫模板批量建立notes資料庫的例子,供參考。sub initialize on error goto errhandle dim ss as new notessession dim db as notesdatabase dim doc as notesdocument dim s...

批量更新資料庫

前言 最近做了個專案 把txt檔案中的資源資訊全量更新到資料庫中,拿到這個專案後,我首先考慮到效能問題應該是個大問題,於是想到了用批處理解決,但是批處理不能支援事物回滾,且只能一條一條sql執行,效率雖然比直接更新資料庫要快,且不占用cpu。經諮詢有一種更好的方法,就是先用c 自帶提供的方法sqlb...