预览加载中,请您耐心等待几秒...
1/7
2/7
3/7
4/7
5/7
6/7
7/7

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

----------------------------------------------------->>>>>>>> 原理:MySQL数据库备份原理:Navicat等数据库界面软件通用的数据库备份原理就是直 接调用MYSQL本身的系统命令。 MySQL本身的系统命令: --opt–hlocalhost--user=root--password=admin--lock-all-tables=true--result-file=E://oes//2221.sql--default-character-set=utf8oes 解析:主机–h,用户名--user,密码—password,锁定所有表--lock-all-tables=true, 目标文件--result-file,编码--default-character-set=utf8,数据源oes Java中执行系统命令方法: Runtimecmd=Runtime.getRuntime(); Processp=cmd.exec(“”);//执行CMD指令(String) 由于无法确定主机是否配置了MySQL环境变量,所以需要最保险的确定MySQL中mysqldump的位置,它存在于MySQL安装文件夹得Bin目录下,问题就是如何获取MySQL的安装目录? ----------------------------------------------------->>>>>>>> 针对于获取MySQL的安装目录,我用的是比较笨的方法:解析注册表。 找到注册表中MySQL的软件信息,里面包含有软件的安装地址,卸载地址,版本号等等基本信息,直接取用它的安装信息就行。 软件信息在注册表中的位置: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\ 软件关联注册表中软件信息: ----------------------------------------------------->>>>>>>> 类CheckSoftware,解析MySQL软件安装地址 importjava.io.BufferedReader; importjava.io.IOException; importjava.io.InputStreamReader; publicclassCheckSoftware{ /* *遍历注册表,查询MySQL的注册表关联 */ publicstaticStringcheck()throwsException{ Runtimeruntime=Runtime.getRuntime(); Processprocess=null; process=runtime .exec("cmd/cregqueryHKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\"); BufferedReaderin=newBufferedReader(newInputStreamReader( process.getInputStream())); Stringstring=null; while((string=in.readLine())!=null){ process=runtime.exec("cmd/cregquery"+string +"/vDisplayName"); BufferedReadername=newBufferedReader(newInputStreamReader( process.getInputStream())); Stringmessage=queryValue(string,"DisplayName"); if(message!=null&&message.contains("MySQL")){ Stringmessage2=queryValue(string,"InstallLocation"); returnmessage2; } } in.close(); process.destroy(); returnnull; } /* *查询出需要的MySQL服务的安装路径 */ privatestaticStringqueryValue(Stringstring,Stringmethod) throwsIOException{ StringpathString=""; Runtimerunti