tid=11830&[匯出], W9 U. Q0 K) k7 l
mysqldump -u userid -e -p db_Name > xxxxx.sql. k7 O1 p, \. M# ?* q6 a4 N; `
匯出一個table:mysqldump -p -u userid dbname tablename > 52avtv_dzx20.201506242307.sql
+ z/ q8 b- o4 T匯出所有資料庫: mysqldump -p -u userid --all-databases > all-database.sql
* B) X: w- ? | 但是,匯到目的資料庫的使用者帳號及密碼有問題,所以還是每個資料庫個別搬,使用者帳號也個別匯出比較安全. I, q5 O1 T0 O
# q* w; U2 }3 d1 |' c注意: 當以上述指令備份時造成網站出現 "502 bad gateway",影響到nginx,只要加參數 --single-transaction --quick 就好了,如下:
* P! x1 P7 u a# u4 ]9 r6 smysqldump -u userid -e -p --single-transaction --quick db_Name > xxxxx.sql
+ m6 j. w/ J: m$ ]問題:mysqldump: Got error: 1017: Can't find file: 'pre_forum_rsscache' (errno: 2) when using LOCK TABLES
# r! Z5 _# @4 ]- a2 y, X6 u# b L9 }; OSol: 只要在mysqldump的時候加上--lock-tables=false就可以解決問題。8 k) w( S% f+ C
接著又出現: 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個檔:
- H: f2 A% x5 \1 d, _0 o! f-rw-rw---- 1 mysql mysql 8852 Jun 3 16:05 pre_forum_rsscache.frm5 @1 Z) ]2 K5 l, I: {
-rw-rw---- 1 mysql mysql 0 Jun 3 16:05 pre_forum_rsscache.MYD
& k6 m$ h; q% V7 k* [$ E* v-rw-rw---- 1 mysql mysql 1024 Jun 3 16:05 pre_forum_rsscache.MYI5 n0 y4 ]3 @0 U% @
Sol: * e& @8 d5 O* @9 S. q3 T/ K' l8 x' H1 O
在phpmyadmin ==SQL 下指令:
: G3 {+ S2 D* G8 m- 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
複製代碼 2 n4 u5 M" l8 k$ y
再備份就正常了
; P' N% K2 {5 u! @$ W問題: 當使用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) D" I' M4 O9 ^/ p9 S" K/ w
Sol: 這是open_files_limit(default=962) 太小,改為4096,由於它屬於read-only,故加在/etc/my.cnf , r }: B/ x- g
然後 service mariadb restart
0 N! T4 M" y: | K- s3 T
0 [$ B5 o: ^3 S" f N2 |[有條件匯出]3 D1 y4 z- v9 V5 }2 R
mysqldump -u帳號 -p密碼 -h主機 資料庫 資料表 -w "sql條件" > 出輸路徑及檔案
- o9 w- E5 R# E% m# I' Q, H9 K例:5 a4 R% ]; A1 M) c
mysqldump -uroot -p123456 -hlocalhost -e AREA_UTF8 city -w "c_id<10 " > /home/web/a.txt
0 x( l, A1 ~* L
0 v( c: w* w& L/ d5 E3 k--no-create-info,-t! W9 n0 S# z" U. R; g9 P3 N" g
只導出資料,而不添加 CREATE TABLE 語句;如果導出格式為SQL語句,則只有insert into部分。
" }4 ?1 v# V+ I--no-data,-d+ }9 `/ q1 J3 y
不導出任何資料,只導出資料庫結構
, H3 e/ D3 i& {: ^, Z--quick,-q . c4 L9 Y9 \1 K$ r/ k8 U3 `
在導出大量資料很有用,強制從 MySQL Server 查詢取得記錄直接輸出,而不是取得所有記錄後存在記憶體中。
. c; x) r! Q U8 y9 J+ W. H2 ]2 T+ K; E
) M/ S" s- d4 O' b/ G3 P8 n
[匯入]# {0 @! U" T# E" |
mysql -u userid -p [-h localhost] db_Name < xxxxx.sql+ i y# r' D q6 ?: @4 d" E
匯入所有資料庫: mysql -u userid -p < all-database.sql! e+ ^) f& h: f& M
匯入一個table :
% r5 D4 j M% U8 S, `mysql -u userid -p -D dbname < cc5278_dzx20.ip2c.201506242307.sql, Z( |% Q$ l/ {1 P. \1 l; _( L
P.S如果匯入檔太大如7GB,則匯入檔案之前執行下列指令:; u p: d( R9 S- ~+ v1 K3 k# \
mysql -uroot -p -e "set global net_buffer_length=1000000; set global max_allowed_packet=1000000000;"
( {5 `; Q5 M0 e: T! ?; A! h( A' x' r; e* p4 ^
[匯出後立即匯入到另一台主機]
4 N8 E) Y% }" l9 a% K5 ~3 Mmysqldump -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
# m5 B1 k0 z# M- m- k G[設定匯入上限(內定2Mb) by phpmyadmin]2 Y: ?+ P2 c4 R4 R% V
參考http://www.av4u.info/forum.php?m ... e=1&extra=#pid203480 j* |$ O; h+ j2 R
+ B/ J* K* ]; H8 q$ u
7 M$ H2 X- G, O0 S! K8 Z' p \9 d" _6 A6 h! n* K8 ]$ b- W7 s4 w
; b2 Z) v3 @) J
0 S8 I- b& a( y- `9 K. }, p, X+ w! G: [' B5 V! p, J( d
4 N6 z: y6 k$ e) j% [' I! `( J% V1 c
" W( P* y/ V/ b* k9 t. |" B1 j+ G
+ W& f/ H. R2 _4 r% ~ R8 N& T' N0 _- ]+ v
% z: t4 b$ [4 C" K, T2 S5 {, x a& K
9 x2 ^; j1 d2 {2 J, m+ P& [0 b |