0
点赞
收藏
分享

微信扫一扫

Java之遍历树状菜单

念川LNSC 2023-12-27 阅读 10

逻辑备份

常用备份选项

库级备份

全库备份
#mysqldump -p密码 [-A|--all-databases]  >alldb.sql

库级备份
#mysqldump -p密码 [-B|--databases] dbname1 dbname2 >dbname.sql 

表级备份

表级备份
#mysqldump -p密码 dbname tablename1 tablename2 >db_t1_t2.sql

备份表结构
#mysqldump -p密码 dbname tablename -d > tablename_jiegou.sql

导出数据和导入数据

​
导出数据
首先查看安全路径:

mysql> show variables like "secure%";



导出数据到安全路径下
mysql> select * from mysql.user into outfile '/var/lib/mysql-files/user.xlsx'

导入数据
mysql> load data infile '/var/lib/mysql-files/user.xlsx' into table user;

注:修改安全路径的方法

#mkdir /data
#chown mysql.mysql /data
#vim /etc/my.cnf
secure_file_priv=/data/

重启数据库生效
#systemctl restart msyqld

恢复数据

恢复数据库

第一种方法:
    mysql -p密码   < db.sql

第二种方法:
#cat db.sql | mysql -p密码

第三种方法:
    mysql> source  db.sql的绝对路径;

恢复数据表

第一种方法:
    mysql -p密码 dbname  < table.sql

第二种方法:
 #cat db.sql | mysql -p密码 dbname

第三种方法:
    mysql> use dbname
    mysql> source  table.sql的绝对路径;

根据二进制日志文件恢复数据

开启binlog日志功能

创建二进制文件存放位置 例/data
#mkdir /data
修改权限
#chown mysql.mysql /data

编辑mysql配置文件添加以下内容
#vim /etc/my.cnf 

server-id = 1
log-bin = /data/mysql-bin

重启数据库
#systemctl restart msyqld

查看二进制日志:
#mysqlbinlog /data/mysql-bin.00001 --base64-output=decode-rows -vv

恢复数据

找到要恢复的sql语句的起始位置、结束位置
修复语句
#mysqlbinlog --start-position  起始位置 --stop-position 结束位置 /data/mysql-bin.00001 | mysql -p密码 dbname

根据binlog日志的时间点恢复
找到要恢复sql语句的起始时间、结束时间
修复语句
mysqlbinlog --start-datetime='2023-12-26 23:55:54' --stop-datetime='2023-12-26 23:56:541' mylog.000001 | mysql -p密码 dbname

物理备份

1.完全备份-----完整备份:

完全备份流程:

mkdir /xtrabackup/full -p

innobackupex --user=root --password='密码' /xtrabackup/full

可以查看一下:
# cd /xtrabackup/full/
# ls
2023-12-26_11-47-49

完全备份恢复流程

1.关闭数据库:
# systemctl stop mysqld
# rm -rf /var/lib/mysql/ *
# rm -rf /var/log/mysqld.log			#可选操作
# rm -rf /var/log/mysql-slow/slow.log  #可选操作

2.恢复之前的验证恢复:
# innobackupex --apply-log /xtrabackup/full/2023-12-26-20_11-47-49

3.确认数据库目录:
恢复之前需要确认配置文件内有数据库目录指定,不然xtrabackup不知道恢复到哪里
# cat /etc/my.cnf
datadir=/var/lib/mysql

4.恢复数据:
# innobackupex --copy-back /xtrabackup/full/2019-08-20_11-47-49

5.修改权限:
# chown mysql.mysql  /var/lib/mysql -R

6.启动数据库:
# systemctl start mysqld

2.增量备份: 每次备份上一次备份到现在产生的新数据

3.差异备份:只备份跟完整备份不一样的

感谢观看!希望能够帮助到大家!

举报

相关推荐

0 条评论