POSTGRESQL:使用Python将远程服务器连接到主机数据库

时间:2012-11-07 14:12:41

标签: python sockets postgresql psycopg2

使用Python / Psycopg2 / PopstgreSQL和Cron。 我想获取远程服务器信息(见下文)并将其添加到主机上的PostGreSQL数据库中。

    Using #!/usr/bin/python 
import socket 
import commands 
import string 
import os 
hostname = socket.gethostname() 
print hostname 
ip = commands.getoutput("ifconfig").split("\n")[1].split()[1][5:] 
print ip 
os = commands.getoutput("lsb_release -d") 
print os[13:34] 
kernel = commands.getoutput("uname -p") 
print kernel 
reboot = commands.getoutput("who -b") 
print reboot[22:38] 

这是'连接数据库'脚本:

#!/usr/bin/python

import psycopg2
import sys

try:
        conn = psycopg2.connect('host=*** dbname=*** user=*** password=***')
        print "Connected to Database"
except:
        print "No Connection"

cur = conn.cursor()#cursor_factory=psycopg2.extras.DictCursor)
try:
        cur.execute('SELECT * FROM new')
        rows = cur.fetchall()
        print "\n Show: \n"
        for row in rows:
                print "   ", row
except:
        print "Not Working"

我能够连接,我能够提取数据。我需要组合这两个脚本并将返回的信息插入到数据库中。

1 个答案:

答案 0 :(得分:1)

您的本地python脚本将包含以下行:

import psycopg2 as db
remote_connection = db.connect('host=that_host dbname=that_db user=user password=pwd')
local_connection = db.connect('host=localhost dbname=local_db user=user password=pwd')