由于备份时语法错误 或 指定的目录不存在,但在备份的时候又没报错,所以工程师以为备份成功了,最终酿成大祸;(成为黑锅侠)
一、错误备份演示
语法出错,备份失效看似备份成功,但查看备份内容时,出现语法错误的警告
1
2
3
4
5
6
7
8
9
10
11
|
[root@db02 ~]
# cat /opt/oldboy_bak1.sql
Usage: mysqldump [OPTIONS] database [tables]
OR mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
OR mysqldump [OPTIONS] --all-databases [OPTIONS]
For
more
options, use mysqldump --help
1,错误点就是 -A 与-B 不能同时使用,会产生语法错误,看下面解释就明白了,指定的范围有冲突
|
补充强调:我们平时发帖子,都是通过web服务器连接mysql,之后通过insert语句把数据存入数据库
-A全备会出现events—warning,下面是 处理方法:
1
2
3
4
|
|
如何拒绝成为黑锅侠:胆大心细,善于总结,吸取经验,脱离黑锅;
二,正确备份演示
定期做备份恢复演练 或恢复测试
1,在test数据库中创建student表
1
2
3
4
5
6
7
8
|
mysql> use
test
;
##进入test库
create table student(
id
int(4) not null,
name char(20) not null,
age tinyint(2) NOT NULL default
'0'
,
dept varchar(16) default NULL
);
##创建student表 里面是各个字段的设置
|
2,备份数据库test
1
2
|
mysqldump -uroot -poldboy123 -S
/data/3307/mysql
.sock -B
test
>
/opt/test
.sql
cat
/opt/test
.sql
#检测备份是否有效
|
3,删除test库(模拟真实环境)
1
2
3
4
5
6
7
8
9
10
11
|
mysql> drop database
test
;
Query OK, 0 rows affected (0.00 sec)
mysql> show databases;
#没有test数据了
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| oldboy |
| performance_schema |
4,恢复test库 |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
[root@db02 ~]
# mysql -uroot -poldboy123 -S /data/3307/mysql.sock </opt/test.sql
mysql> show databases;
#恢复test库,因为之前使用-B备份的,所以现在不用指定库,直接恢复
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| oldboy |
| performance_schema |
|
test
|
+--------------------+
5 rows
in
set
(0.00 sec)
mysql> desc student;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
|
id
| int(4) | NO | | NULL | |
| name | char(20) | NO | | NULL | |
| age | tinyint(2) | NO | | 0 | |
| dept | varchar(16) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
4 rows
in
set
(0.00 sec)
|
到此,模拟数据恢复成功。
mysql 常见报错代码链接:
http://oldboy.blog.51cto.com/2561410/1728380
转载于:https://blog.51cto.com/12218064/1924654