Получить путь установки MySQL

Мне нужно получить путь установки MySQL, чтобы выполнить экспорт и импорт базы данных через код Java. В настоящее время я работаю с затмением. Мне нужно получить путь установки в строковой переменной "mySqlPath".

File fMysqlPath = new File("C:\\Program Files\\MySQL\\MySQL Server 5.1\\bin\\");
String executeCmd = "mysqldump -u " + Constants.DB_USER + " -p" + 
                    Constants.DB_PASSWORD + " " + Constants.DB_NAME + " -r " + 
                    FilePath + "\\" + FileName;
Process runtimeProcess = Runtime.getRuntime().exec(executeCmd, null, fMysqlPath);

Это то, что я сделал. Это проблема зависимости.

Как я могу решить это?

2 ответа

Решение

Вы пробовали это:

import java.sql.*;
import javax.sql.*;

public class MysqlPathFinderDemo{

public static void main(String args[]){
String dbtime;
String dbUrl = "jdbc:mysql://your.database.domain/yourDBname";
String dbClass = "com.mysql.jdbc.Driver";
String query = "Select * FROM users";

try {

      Class.forName("com.mysql.jdbc.Driver");
      Connection con = DriverManager.getConnection (dbUrl);
      Statement stmt = con.createStatement();
      res = Myconnection.st.executeQuery("select @@datadir");
      String Mysqlpath = "";

      while(res.next()){
          Mysqlpath=res.getString(1) ;
      }

      Mysqlpath = Mysqlpath.replace("Data", "bin"); 
      System.err.println("Mysql path is :"+a);
   } catch(Exception ee) {
   }
 }
}

Вы можете напрямую запросить MySQL и попросить себя указать путь:

SHOW VARIABLES LIKE 'basedir';

или чем проще,

SELECT @@basedir;

Должен дать вам путь установки. Оба должны привести к чему-то вроде:

C: \ Program Files \ MySQL \ MySQL Server 5.1 \

datadir является эквивалентом для получения пути к каталогу данных (где находятся данные).

Другие вопросы по тегам