У меня есть требование, когда мне нужно вставить данные postgres в mysql. Предположим, у меня есть пользовательская таблица в postgres. У меня есть таблица пользователя в mysql. Я пытался сделать что-то вроде этого:Импорт данных postgres в mysql
gts = 'cd '+js_browse[0].js_path #gts prints correct folder name/usr/local/myfolder_name
os.system(gts)
gts_home = 'export GTS_HOME='+js_browse[0].js_path
os.system(gts_home)
tt=gts+'&& sh bin/admin.sh User --input-dir /tmp/import'
#inside temp/import i import store my postgres user table data
#bin is the folder inside myfolder_name
В MySQL, если я использую команду он работает прекрасно:
cd /usr/local/myfolder_name
bin/admin.sh User -account=1 user=hamid -create'
Я не могу хранить данные внутри MySQL таким образом. Любая помощь должна быть оценена.
Это одно время или вам нужен сценарий, чтобы вы могли повторить копирование/передачу/импорт данных? Я могу только догадываться, что admin.sh - это сценарий оболочки, который использует свои аргументы для выполнения определенных операций, таких как создание пользователя (что похоже на ваш пример). Вы надеетесь изменить admin.sh, чтобы делать что-то с базами данных mysql и postgres? Как admin.sh определяет, к какой базе данных подключиться? Можете ли вы успешно сохранить данные пользователя в temp/import? – ghbarratt
Мне нужен этот скрипт для запуска каждый раз, когда я создаю нового пользователя в postgres.yes, мои данные хранятся в temp/import. –
Итак, что вы на самом деле хотите сделать в этот момент - получить данные, собранные в temp/import в базе данных MySQL, правильно? Я предполагаю, что в идеале вы сделаете это через тот же скрипт python, который вы используете для извлечения данных из db Postgres. Я думаю, что ваши варианты в этом случае будут такими, как [MySQLdb] (http://stackoverflow.com/questions/372885/how-do-i-connect-to-a-mysql-database-in-python) или [ mysql command] (http://stackoverflow.com/questions/6730111/how-to-execute-large-mysql-data-insert-script-file-using-command-line-in-windows) – ghbarratt