数据库安全知识----备份和部署

备份

数据库备份的重要性:
数据库安全性至关重要,任何数据的丢失都可能产生严重的后果
造成数据丢失的原因:
程序错误。认为操作错误,运算错误,磁盘故障,灾难和盗窃

数据库备份的分类

物理备份:对数据库操作系统的物理文件
冷备份(脱机备份):关闭数据库进行 tar
热备份(脱机备份):mysqldump 依赖于数据库日志文件
温备份:数据库锁定表格(不可写但可读)的状态下进行备份

逻辑备份:
逻辑备份是对数据库逻辑组件的备份.表示为逻辑数据库结构,这种类型的备份适用于可以编辑数据值或表结构 从数据库的备份策略角度来看,备份又可分为完全备份、差异备份和增量备份
完全备份:对数据库进行完整备份,整个数据库,数据结构和文件结构的备份,大量重复,占用大量
增量备份:基于前一次完备或增倍进行的,当前周期被发生变化的数据或字段
差异备份:基于上次的全备

如何选择逻辑备份策略

合理值区间
一周一次全备,全备的时间需要在不提供业务的时间区间进行PM 10点到5点
增量,3天或2天一次增量备份
差异:选择特定的长江进行备份
一个处理(NFS)提供额外空间给mysql服务器用

常用的备份方法

1,物理冷备
备份时数据库处于关闭状态,直接打包数据库文件tar

2,专用备份工具
mysqlhotcopy 常用的逻辑备份工具

3,启动二进制日志进行增量备份
进行增量备份,需要刷新二进制日志

日志

日志类型和作用:
1,redo 重做日志:达到事务的一致性,每次重启会重做
2,undo回滚日志:保证数据的原子性
3,errorlog错误日志:启动,停止,运行中发生的错误信息
4,slow query log 慢查询日志:记录执行时间过长的sql,时间阈值可以配置(10s),只记录成功,用于提醒优化
5,bin log 二进制日志:用于主从复制,实现主从同步,记录数据库中执行的sql语句
6,relay log 中继日志:用于数据库主从同步,将数据库发来的bin log保存在本地,然后从库中回放
7,general log 普通日志:记录数据库的操作明细,默认关闭。开启后悔降低数据库的性能

设置日志

错误日志,
log-error=/usr/local/mysql/data/mysql_error.log 指定路径
通用日志:记录mysql所有连接语句,默认关闭
general_log=ON
gemeral_log_file=/usr/local/mysql/data/mysql_general.log
二进制日志,用于数据恢复,默认开启
log-bin=mysql-bin
中继日志,在mysql主从同步,读写分类集群的从节点开启。主节点一般不需要

慢查询日志
slow_query_log=ON
slow_query_log_file=/usr/local/mysql/sata/mysql_slow_query.log
long_query_time=5

systemctl restart mysqld
show variables like ‘general%’ #查看通用日志是否开启
show variables like ‘log_bin%’ #查看二进制日志是否开启
show variables like ‘%slow%’# 慢查询日志是否开启
show cariables like ‘long_query_time’ #慢查询时间设置
set global slow_query_log=ON;#开启慢查询

mysql完全备份与恢复

1,物理冷备份与恢复
systemctl stop mysqld
yum -y install xz
tar jcvf /opt/mysql_all_$(data +%F).tar.xz /usr/local/mysql/data/
mv /usr/local/mysql/data/ /opt/
#解压
tar jcvf /opt/mysq_* -C/usr/loval/mysql/data/
cd /usr/local/mysql/data
mv /usr/local/mysql/data/* ./
2,mysqldump备份与恢复
(1),完全备份一个或多个完整的库
mysqldump -uroot -pabc123 --databases 库名 > 备份路径
#导出的数据库脚本文件

(2),完全备份mysql中所有的库
mysqldump -uroot -pabc123 --all-databases > 路径
(3),完全备份苦衷的部分表
mysqldump -uroot -pabc123 库名 表名 > lujing

恢复数据库
source 命令
source /l路径
在这里插入图片描述
mysqldump -uroot -pabc123 school info > /opt/info.sql
mysql -uroot -pabc123 登录数据库查看
恢复数据表

mysql> source /opt/info.sql
mysql> select * from info; 查询所有字段
mysql> show tables; 查看表信息
方式二:
[root@mysql abc]# mysqldump -uroot -p123123 school info >/abc/school.info.sql
[root@mysql abc]# mysql -uroot -pabc123 -e ‘drop table school.info;’
[root@mysql abc]# mysql -uroot -pabc123 -e ‘show tables from school;’

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值