1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > mysql定时导入_MySQL导入 导出 数据库定时备份

mysql定时导入_MySQL导入 导出 数据库定时备份

时间:2020-01-06 12:32:49

相关推荐

mysql定时导入_MySQL导入 导出 数据库定时备份

本篇使用的MySQL版本是5.7.30,注意不同版本之间可能会有差异。

一、导出操作

1、查找mysqldump命令位置

which mysqldump

2、mysqldump导出示例

用户名和密码分别是root和123456;导出远程库,使用-h+IP和-port+端口,如下所示。后面的命令默认导出本地库。

/usr/bin/mysqldump -h192.168.43.151 -port3306 -uroot -p123456 mydb1 > /aa.sql

1)导出所有数据库

/usr/bin/mysqldump -uroot -p123456 --all-databases > /aa.sql

2)导出数据库mydb1

/usr/bin/mysqldump -uroot -p123456 mydb1 > /aa.sql

3)导出数据库mydb1、mydb2

/usr/bin/mysqldump -uroot -p123456 --databases mydb1 mydb2 > /aa.sql

4)导出数据库mydb1的表t_test1

/usr/bin/mysqldump -uroot -p123456 mydb1 t_test1 > /aa.sql

5)导出数据库mydb1的表t_test1和t_test2

/usr/bin/mysqldump -uroot -p123456 mydb1 t_test1 t_test2> /aa.sql

二、导入操作

1、明确文件

查看导出的文件,发现只有同时导出多个数据库时,文件中才有创建数据库的语句。因此在无数据库的情况下需要手动创建数据库。

2、导入示例

1)方式一:登录到MySQL客户端,执行source命令(请先看下面的备注)

mysql> source /aa.sql;

2)方式二:指定用户名、密码,使用小于号“

[root@localhost /]# mysql -uroot -p123456 mydb1 < /aa.sql

备注:

1)导出文件不是多库,文件中没有创建库语句,上述两种方式都要指定数据库。

1.1)方式一使用use mydb1指定,否则文件内容会导入到当前use的库中。

1.2)方式二中命令写明mydb1,否则导入语句报错。

如果没有需要导入的数据库,则需要手动先创建再执行上面的语句,如下:

create database mydb1;

use mydb1;

set names utf8;

2)导出文件是多库,文件中有创建库语句,可以不指定数据库,自动创建数据库。

2.1)方式一不用使用use mydb1,直接执行:mysql> source /aa.sql;

2.2)方式二不载写库名,直接执行:mysql -uroot -p123456 < /aa.sql

三、定时备份

1、写脚本(后面会单独写一个详细的,本篇不是重点,不再写了)

#!/bin/bash

mysqldump-uroot -p123456 mydb1 > /var/mysql/backup/mydb1_$(date +%Y%m%d_%H%M%S).sql

2、配置定时任务

crontab -e

定时计划如下,每天晚上23:30备份。

30 23 * * * sh /usr/local/myshell/mysql/database_backup.sh

定时任务相关知识,参考点击这里

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。