Fork me on GitHub

Linux下Mysql命令导入导出与自动备份

安装,乱码,远程访问,防火墙问题: http://www.cnblogs.com/Irving/archive/2013/04/06/3002938.html
手动备份数据库
#使用mysqldump导出数据库
    #进行数据库导入 
    mysqldump -u root -p databasename> databasename.sql 
    #如果只想导出某个表,如test 
    mysqldump -u root -p databasename test> databasename.sql 

#使用source导入数据库
    #打开数据库,root可以换成你的数据库用户名,databasename2是新建的空数据库名  
    mysql -u root -p  
    #进入数据库 
    use databasename2; 
    #导入数据库,假如导出的数据库放于home 
    source /home/databasename.sql
自动备份数据库
#在/opt目录下新建两个文件夹shell与bak_mysql
    cd /opt
    mkdir shell bak_mysql
#新建一个文件back_mysql.sh内容如下上次到shell文件夹下
    #!/bin/sh    #是告诉系统这个是一个sell脚本
    cd /var/lib  #服务器默认的mysql目录,这个目录下应该有一个mysql文件夹
    thisdate=`date +%Y%m%d` #获取今天的年月日,比如今天  20121214,并赋值给变量thisdate
    tar -zcvf /opt/back_mysql/$thisdate.testdb.tar.gz ./mysql/testdb   #这个是打包命令,打包一个压缩包名字为  20130414.testdb.tar.gz到 /opt/back_mysql这个文件夹下,其中testdb是数据库名字
#自动运行
#crontab配置文件
sudo crontab -e
#在最顶部输入代码
1 1 * * 6 /opt/shell/back_mysql.sh  #每周6早上1点1分执行一次备份

########################################################

#新建文件命名为mysqlbackup.sh
#内容如下
#!/bin/bash
DATE=`date +%Y-%m-%d_%H_%M_%S`
FILE="/opt/db_backup/testdb-DATE.sql"mysqldumpurootp123456testDB|gzipc9>FILE.gz
echo "done"

#crontab配置文件
#crontab -e
#在最顶部输入代码
#30 13 * * * sh /opt/db_backup/mysqlbackup.sh

#######################################################

 

posted @   花儿笑弯了腰  阅读(273)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述
点击右上角即可分享
微信分享提示