java实现数据库自动异地备份

亦凉 2024-04-06 10:33 211阅读 0赞

数据备份方式千千万,这里介绍的是通过Java调用mysql命令行工具,实现数据库的备份,废话不多说,代码如下:

  1. command.append(" cmd /c c:\\mysqldump -u").append(username).append(" -p").append(password)//密码是用的小p,而端口是用的大P。
  2. .append(" -h").append(ip).append(" -P").append(port).append(" ").append(database).append(" -r \"").append(storePath+"\"");
  3. // Process process = Runtime.getRuntime().exec(command.toString(), null, new File(storePath));
  4. // process.waitFor();
  5. /**
  6. * 将文件拷贝到指定目录 指定执行命令
  7. * mysqldump.exe
  8. */
  9. log.debug("mysqldump -u"+username+" -p"+password+" -h"+ip+" -P"+port+" demo >d:/"+storeName);
  10. Process process = Runtime.getRuntime().exec("cmd /C mysqldump.exe目录 -u"+username+" -p"+password+" -h"+ip+" -P"+port+" demo >d:/"+storeName);
  11. InputStream is = process.getInputStream();
  12. process.waitFor();
  13. // Process process = Runtime.getRuntime().exec("cmd /c start /b C:\\可以使用.bat文件");
  14. // process.waitFor();

常见的 备份方式如下有多中,根据实际情况进行操作,执行java代码时一定注意执行文件的路径正确,我这里是window系统环境。Linux没试,不过大差不差,原理都一样,如果是异地备份,把本地路径改成映射的硬盘地址即可

a9b8bff4e3654045a044d2b3f3e40418.png

一. mysqldump命令备份数据

在MySQL中提供了命令行导出数据库数据以及文件的一种方便的工具mysqldump,我们可以通过命令行直接实现数据库内容的导出dump,首先我们简单了解一下mysqldump命令用法:

  1. #MySQLdump常用
  2. mysqldump -u root -p --databases 数据库1 数据库2 > xxx.sql

二. mysqldump常用操作示例

1.备份全部数据库的数据和结构

  1. mysqldump -uroot -p123456 -A > /data/mysqlDump/mydb.sql

2.备份全部数据库的结构(加 -d 参数)

  1. mysqldump -uroot -p123456 -A -d > /data/mysqlDump/mydb.sql

3.备份全部数据库的数据(加 -t 参数)

  1. mysqldump -uroot -p123456 -A -t > /data/mysqlDump/mydb.sql

4.备份单个数据库的数据和结构(,数据库名mydb)

  1. mysqldump -uroot-p123456 mydb > /data/mysqlDump/mydb.sql
  1. 备份单个数据库的结构

    mysqldump -uroot -p123456 mydb -d > /data/mysqlDump/mydb.sql

  2. 备份单个数据库的数据

    mysqldump -uroot -p123456 mydb -t > /data/mysqlDump/mydb.sql

  3. 备份多个表的数据和结构(数据,结构的单独备份方法与上同)

    mysqldump -uroot -p123456 mydb t1 t2 > /data/mysqlDump/mydb.sql

  4. 一次备份多个数据库

    mysqldump -uroot -p123456 —databases db1 db2 > /data/mysqlDump/mydb.sql

发表评论

表情:
评论列表 (有 0 条评论,211人围观)

还没有评论,来说两句吧...

相关阅读