Я хочу продолжить работу над oracle db из дома, и мне нужны определенные таблицы, которые я создал. Как мне их сохранить, а затем восстановить?
4 ответа
Быстрый и простой способ - используйте инструменты Oracle exp
& imp
Чтобы экспортировать их:
exp scott/tiger file=emp.dmp tables=(emp,dept)
Передайте файл dmp к месту назначения и затем импортируйте их:
imp scott/tiger file=emp.dmp fromuser=scott touser=scott tables=(emp,dept)
Полностью согласен с Сатьей. Стоит отметить одну вещь - вместо того, чтобы читать руководство, вы можете ввести «help = Y» для команды imp/exp. Для остроумия:
exp help=y
imp help=y
Это покажет вам наиболее распространенные параметры, которые вы можете использовать, а также покажет вам значения по умолчанию для каждого параметра.
Для экспорта таблицы:-
expdp mydbusername/mydbpassword@mydbinstancename tables=mytablename directory=MY_DIR dumpfile=mytablename.dmp
Для импорта таблицы:-
impdp mydbusername/mydbpassword@mydbinstancename tables=mytablename directory=MY_DIR dumpfile=mytablename.dmp
В качестве параметра directory
вы можете использовать каталог по умолчанию DATA_PUMP_DIR
или свой собственный каталог MY_DIR
.
Версия Oracle используется для вышеуказанных команд:-
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit
Я помню инструмент под названием ODUMP, когда я использовал Oracle 8i в NetWare. На следующей веб-странице объясняется, как импортировать и экспортировать данные: http://www.orafaq.com/wiki/Import_Export_FAQ
Эти инструменты импорта и экспорта можно использовать для переноса всей базы данных или отдельных таблиц, но я считаю, что существует ограничение в том, что данные должны импортироваться обратно в одно и то же табличное пространство (что не будет проблемой, если вы используете Oracle 10g или новее, которые поддерживают переименование табличных пространств).
Я не вижу никакой полезной информации для команды ODUMP в результатах поиска Google, поэтому, возможно, я не помню название инструмента правильно (я не пользуюсь Oracle уже несколько лет после перехода на PostgreSQL, но я по-прежнему расцените это как отличный сервер SQL).