Mysql
 sql >> Baza danych >  >> RDS >> Mysql

jak skopiować schemat w mysql za pomocą java

Możesz spróbować użyć ddlutils Apache . Istnieje sposób na wyeksportowanie ddls z bazy danych do pliku xml i ponowne zaimportowanie go z powrotem.

korzystanie z API Strona zawiera przykłady jak wyeksportować schemat do pliku xml, odczytać z pliku xml i zastosować go do nowej bazy danych. Odtworzyłem te funkcje poniżej wraz z małym fragmentem, jak z nich korzystać, aby osiągnąć to, o co prosisz. Możesz użyć tego jako punktu wyjścia i dalej go optymalizować.

DataSource sourceDb;
DataSource targetDb;

writeDatabaseToXML(readDatabase(sourceDb), "database-dump.xml");
changeDatabase(targetDb,readDatabaseFromXML("database-dump.xml"));



public Database readDatabase(DataSource dataSource)
{
   Platform platform = PlatformFactory.createNewPlatformInstance(dataSource);
   return platform.readModelFromDatabase("model");
}

public void writeDatabaseToXML(Database db, String fileName)
{
    new DatabaseIO().write(db, fileName);
}

public Database readDatabaseFromXML(String fileName)
{
    return new DatabaseIO().read(fileName);
}

public void changeDatabase(DataSource dataSource,
                           Database   targetModel)
{
    Platform platform = PlatformFactory.createNewPlatformInstance(dataSource);
    platform.createTables(targetModel, true, false);
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zapytanie MYSQL działa bardzo wolno

  2. Kolumna „Aktualizacja sygnatury czasowej” MySQL — wyzwalacz

  3. Przechowywanie HTML w MySQL:blob czy tekst?

  4. Łączenie się z bazą danych Mysql za pomocą C# - potrzebujesz trochę z zestawami danych

  5. Jak mysql może szybciej wstawiać miliony rekordów?