java遠程備份mysql數據庫關鍵問題(限windows環境,親測解決)

其它環境同理也可解決。mysql

條件:爲了使用mysql命令,本機要安裝mysql ,我本機安裝的是mysql 5.5。sql

錯誤1:使用命令 mysqldump -h192.168.1.50 -u root -p123 bdas >D:/test.sql 報錯數據庫

mysqldump: Got error: 1449: The user specified as a definer ('root'@'%') does no
t exist when using LOCK TABLESide

解決方法:登陸遠程主機mysql 的root用戶 賦全部權: grant all privileges on *.* to root@"%" identified by ".";spa

錯誤2:命令行

使用命令     mysqldump -h192.168.1.50 -u root -p123 bdas >D:/test.sql   報錯
ERROR 1045 (28000): Access denied for user 'root'@'hehg-PC' (using password: YES)3d

解決方法:
如下皆爲命令行,若未配置環境變量則命令在bin目錄(cd C:\Program Files\MySQL\MySQL Server 5.5\bin)下使用。
1:在遠程主機上中止mysql服務:net stop mysql;
2:在mysql根目錄下有一個my.ini文件,打開找到標籤[mysqld],在其下面添加skip-grant-tables,保存退出;
3:遠程主機啓動mysql服務:net start mysql;blog

 

在本機使用上述命令便可備份遠程mysql數據庫在本機指定目錄。ip

接着將這些命令作成*.bat格式,用Java調用runtime執行bat命令(思路)。ci

 

這些作了下面還要作Java控制還原數據庫

相關文章
相關標籤/搜索