Резервное копирование базы данных удаленного сервера MYSQL через s sh с использованием mysqldump - PullRequest
1 голос
/ 17 февраля 2020

Я хочу создать резервную копию базы данных mysql, которая является удаленным сервером, отслеживающим s sh. Итак, я написал код, используя mysqldump и java для решения этой задачи. Детали моего удаленного сервера указаны ниже.

Способ подключения: Стандартный TCP / IP через S SH S SH Имя хоста: 172.10.2.14 S SH Имя пользователя: remoteuser S SH Пароль: remotepwd MYSQL Имя хоста: 127.0.0.1 (localhost) MYSQL Порт сервера: 3306 Имя пользователя: root Пароль: rootpwd DB: db_stores

Но когда я попытался запустить программу, это заняло довольно много времени и застряло.

     String backup_path=backup_path_in;
     String mysql_path=mysql_path_in;
     Process p = null;
    try {
        Runtime runtime = Runtime.getRuntime();
        p = runtime.exec("ssh remoteuser@172.10.2.14 mysql -uremoteuser -premotepwd db_stores | " + 
                mysql_path + "/mysqldump -h127.0.0.1 -uroot -prootpwd --add-drop-database -B db_stores -r " + backup_path + "/"+ cur_date +"-stores.sql");

        int processComplete = p.waitFor();

        if (processComplete == 0) {
            JOptionPane.showMessageDialog(this,"Backup created successfully!!!");
        } else {
            JOptionPane.showMessageDialog(this,"Something went wrong!!!");
        }
    } catch (Exception e) {
        e.printStackTrace();
    }

Любая помощь с этим была бы великолепна.

...