консольный клиент db2 linux - PullRequest
2 голосов
/ 18 ноября 2011

Как мне выполнить скрипт sql на удаленном сервере db2?

В MySQL я бы сделал что-то вроде этого:

mysql -uroot -proot -h localhost < resources/db_scripts/drop_mysql.sql >> logs/drop_my.log

Я также хотел бы сделать то же самое дляMSSQL и Sybase.

Ответы [ 2 ]

2 голосов
/ 18 ноября 2011

Этот тип операции в DB2 можно выполнить с помощью «клиента сервера данных» (в предыдущих версиях DB2 он имел другие имена, например, «клиент администратора DB2»). Это приложение имеет набор инструментов, которые позволяют вам управлять локальной или удаленной базой данных. Наиболее подходящий инструмент для вашего случая называется «Командное окно».

Чтобы начать работу с удаленной базой данных через командное окно, вы должны «увидеть» удаленные базы данных, и для этого вы каталогизируете удаленную машину (узел администратора каталога), удаленный экземпляр (узел каталога), а затем база данных (каталог базы данных). Это выглядит сложно, и для предотвращения этой проблемы есть графический инструмент, называемый помощником по конфигурированию DB2 (db2ca), который позволяет вам конфигурировать среду DB2.

db2 catalog admin tcpip node NODENAME remote SERVERNAME SYSTEM SERVERNAME
db2 catalog tcpip node INSTNAME remote SERVERNAME server PORTNUM remote_instance INSTANCE system SERVERNAME;
db2 catalog database DBNAME as ALIAS at node INSTNAME

Как только вы каталогизируете свою удаленную базу данных, вы можете сделать

db2 -tvf resources/db_scripts/drop_mysql.sql -z logs/drop_my.log

Как часть вашего файла сценария, вы должны иметь оператор соединения (db2 connect для пользователя ALIAS USERNAME, использующий ПАРОЛЬ) или вам нужно установить соединение перед вызовом выполнения файла сценария.

0 голосов
/ 18 ноября 2011

Вы можете использовать db2 Процессор командной строки следующим образом:

$ db2 "select * from table_xyz"

Но я думаю, что вам может понадобиться SSH-доступ к удаленному серверу,

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...