tid=11830&[匯出]
1 ?' o7 }2 t3 a0 X9 u+ s$ \3 Tmysqldump -u userid -e -p db_Name > xxxxx.sql& A4 t8 a: q( H- k/ |
匯出一個table:mysqldump -p -u userid dbname tablename > 52avtv_dzx20.201506242307.sql; H) T; I. I+ N' e- _' E
匯出所有資料庫: mysqldump -p -u userid --all-databases > all-database.sql 1 ], F8 g% K. k. ^
但是,匯到目的資料庫的使用者帳號及密碼有問題,所以還是每個資料庫個別搬,使用者帳號也個別匯出比較安全
! L- [% N" j: ~4 O' C7 @0 T4 Y# j9 C3 M7 E9 g
注意: 當以上述指令備份時造成網站出現 "502 bad gateway",影響到nginx,只要加參數 --single-transaction --quick 就好了,如下:7 M1 T6 K9 O' ?. L8 u
mysqldump -u userid -e -p --single-transaction --quick db_Name > xxxxx.sql" ^ W- k6 S" [9 R6 z& q; H
問題:mysqldump: Got error: 1017: Can't find file: 'pre_forum_rsscache' (errno: 2) when using LOCK TABLES
9 }9 e0 Z7 P$ i6 vSol: 只要在mysqldump的時候加上--lock-tables=false就可以解決問題。1 I* @' E# \, `- D9 P, W
接著又出現: mysqldump: Couldn't execute 'show create table `pre_forum_rsscache`': Can't find file: 'pre_forum_rsscache' (errno: 2) (1017),以phpmyadmin登入查看卻看到pre_forum_rsscache 使用中ls /var/lib/mysql/52avtv_dz/pre_forum_rsscache* 發現只有 pre_forum_rsscache.frm 1個檔案 ,正常應該要有3個檔:4 W3 G# C1 | ~ e
-rw-rw---- 1 mysql mysql 8852 Jun 3 16:05 pre_forum_rsscache.frm
1 S4 B: j9 u; n" ~ d1 T-rw-rw---- 1 mysql mysql 0 Jun 3 16:05 pre_forum_rsscache.MYD
S* \" `' F) A; D-rw-rw---- 1 mysql mysql 1024 Jun 3 16:05 pre_forum_rsscache.MYI
3 _9 b+ `% ?' ], G! {/ _8 rSol:
$ Q( @5 D1 O7 A% f9 p在phpmyadmin ==SQL 下指令:
3 ^2 K! X! u* R$ z# ^! W2 n1 o% S! G- DROP TABLE IF EXISTS pre_forum_rsscache;
- CREATE TABLE pre_forum_rsscache (
- lastupdate int(10) unsigned NOT NULL DEFAULT '0',
- fid mediumint(8) unsigned NOT NULL DEFAULT '0',
- tid mediumint(8) unsigned NOT NULL DEFAULT '0',
- dateline int(10) unsigned NOT NULL DEFAULT '0',
- forum char(50) NOT NULL DEFAULT '',
- author char(15) NOT NULL DEFAULT '',
- `subject` char(80) NOT NULL DEFAULT '',
- description char(255) NOT NULL DEFAULT '',
- guidetype char(10) NOT NULL DEFAULT '',
- UNIQUE KEY tid (tid),
- KEY fid (fid,dateline)
- ) ENGINE=MYISAM DEFAULT CHARSET=utf8
複製代碼 0 r! A' I! e( T2 r
再備份就正常了. m' _4 S" v% b: t! i
問題: 當使用mariadb 5.5.68 備份時出現error:mysqldump: Couldn't execute 'SHOW TRIGGERS LIKE 'pre\_portal\_topic\_pic'': Can't read dir of './db_name/' (errno: 24) (1018)
* ~7 h% p2 n) h+ o& l5 iSol: 這是open_files_limit(default=962) 太小,改為4096,由於它屬於read-only,故加在/etc/my.cnf
( A, Z* d3 s" x6 N0 ~' f然後 service mariadb restart5 x$ N7 q# b5 n5 Q) t5 P
, O6 G/ O/ I7 J- y' E5 d[有條件匯出]
. k9 e. x/ b& R. Cmysqldump -u帳號 -p密碼 -h主機 資料庫 資料表 -w "sql條件" > 出輸路徑及檔案
% }! { y2 N( n- l! ]% Y- I4 o/ `例:
$ y0 l9 g" l7 O* Q7 c# amysqldump -uroot -p123456 -hlocalhost -e AREA_UTF8 city -w "c_id<10 " > /home/web/a.txt
0 a- b# W% w* [/ l# Y
% Q J8 b# m8 X* k--no-create-info,-t' s; n* \1 ^, x
只導出資料,而不添加 CREATE TABLE 語句;如果導出格式為SQL語句,則只有insert into部分。 R+ r3 i, v6 g5 Y' @$ w7 }3 W
--no-data,-d. H" H3 s, }+ P2 w
不導出任何資料,只導出資料庫結構! V, J( s! w$ {- t- l/ \
--quick,-q
. {6 u: k' `3 f: h: z! @在導出大量資料很有用,強制從 MySQL Server 查詢取得記錄直接輸出,而不是取得所有記錄後存在記憶體中。 a0 d; m; W6 H' J5 x# |
7 B9 l. o4 X1 J
" `- Q' c6 J6 B& Y& j
[匯入], U" u; w4 n/ f
mysql -u userid -p [-h localhost] db_Name < xxxxx.sql
, a8 @8 U% G* q+ v' i匯入所有資料庫: mysql -u userid -p < all-database.sql3 y! @2 J" ]: h
匯入一個table :
: }) b, _1 y# {% O+ q9 J* Fmysql -u userid -p -D dbname < cc5278_dzx20.ip2c.201506242307.sql+ ]. _ X# J5 D( X, g
P.S如果匯入檔太大如7GB,則匯入檔案之前執行下列指令:
" q# a) V) g: imysql -uroot -p -e "set global net_buffer_length=1000000; set global max_allowed_packet=1000000000;"
2 |" r, K" h6 l- S8 b9 C4 F, G* e1 D- I$ q) J; F
[匯出後立即匯入到另一台主機]
$ @3 D: I! E; ~0 K Umysqldump -u [SOURCE_userid] -h [SOURCE_IP] -e -q --password=[SOURCE_PASSWORD] SOURCE_db_Name | mysql -u [DISTANCE_userid] --password=[DISTANCE_PASSWORD] -h [DISTANCE_IP] DISTANCE_db_Name
# s5 X; O6 b: c- {+ \+ D+ S9 ?[設定匯入上限(內定2Mb) by phpmyadmin]+ f& y- a7 e7 @) r0 [$ ~& v
參考http://www.av4u.info/forum.php?m ... e=1&extra=#pid20348* ~4 E7 u# v: }- j- l! L
/ o8 n1 T; ~- M" T2 t& q% S" R f
& T, v$ N. k8 ] Y9 A h4 V9 s4 @4 K- {& m+ P, E4 Z; H: j- N$ s
, n3 J7 a7 i, ]4 }% A
$ t/ D+ V* X w1 g+ R+ m/ X4 Z+ |, Z9 g$ d
* K( ~+ Z. ?3 S+ L& N4 r
7 i* L. m+ d% {
4 @# v1 o* Z" [( |3 c- m
* i5 i5 o& K( M) b' y N; n+ i, E( }
# v1 |5 U0 W; o, s; n. I
|