Сравнить структуры двух баз данных? - PullRequest
21 голосов
/ 05 марта 2010

Я хотел спросить, можно ли сравнить полную структуру базы данных двух огромных баз данных. У нас есть две базы данных: одна база данных разработки, другая база данных производства. Иногда я забывал вносить изменения в производственную базу данных, прежде чем мы выпустили некоторые части нашего кода, в результате чего производственная база данных не имеет той же структуры, поэтому, если мы выпускаем что-то, мы получаем некоторые ошибки. Есть ли способ сравнить два или синхронизировать?

Ответы [ 17 ]

1 голос
/ 06 марта 2010

SchemaCrawler - это бесплатный, независимый от платформы инструмент, позволяющий сравнивать структуры баз данных. Две базы данных не должны быть подключены одновременно - вы можете сохранить свою структуру базы данных в удобочитаемом текстовом файле. Comaprisons выполняются с использованием стандартных инструментов сравнения.

Я бы порекомендовал автоматизировать сравнение как часть процесса сборки и развертывания, чтобы гарантировать, что ваши производственные системы никогда не устаревают.

1 голос
/ 05 марта 2010

В зависимости от базы данных доступные инструменты могут различаться.

Для этого я использую ER / Studio Embarcadero. Он имеет функцию сравнения и слияния.

Есть множество других, таких как Toad for MySQL, которые также могут сравнивать. Также согласитесь с предложением Red-Gate, но никогда не использовали его для MySQL.

0 голосов
/ 19 апреля 2012

Я наконец-то воспользовался простым инструментом под названием «сравнение структур mysql», чтобы решить эту проблему Это только для Windows, но это бесплатно, и это работает ..

0 голосов
/ 12 апреля 2010

Попробуйте Сравнение схем dbForge для сервера SQL .Он может сравнивать и синхронизировать любую схему базы данных.Быстро, легко, всегда дает правильный результат.Посмотрите, как он летит в вашей базе данных!

0 голосов
/ 24 марта 2010

Я бы определенно пошел с AdeptSQL , если вы используете MSSQL.Это наименее привлекательный, но самый талантливый инструмент сравнения дБ среди тех, что я пробовал.Он может сравнивать как структуру, так и данные.Он сообщает вам, какие таблицы существуют в одной БД, но не существует в другой, сравнивает структуру и данные общих таблиц и может создать сценарий для синхронизации двух.Это не бесплатно, но есть 30-дневная пробная версия (насколько я помню)

0 голосов
/ 05 декабря 2018

Если вы используете MySQL, есть бесплатный инструмент DB Matcher , куда вы загружаете структуру из 2 .SQL файлов, и она дает вам различия

https://dbmatcher.com

0 голосов
/ 13 мая 2010

SQL Examiner Suite 2010 сравнивает базы данных MySQL (схемы и данные)

...