Utilisez psycopg2 pour établir la connexion de données. Il y a pas mal d'exemples dans la documentation :
Une fois que vous avez configuré votre source de données, parcourez les résultats de votre instruction "SELECT" en créant une instruction "INSERT INTO" via l'impression du jeu de résultats dans un fichier. Fondamentalement, une logique inverse.
De cette façon, si le moment vient et que vous avez besoin d'utiliser votre fichier de sauvegarde, vous lancez simplement le fichier SQL qui réinsère les données dans...
Exemple :
import psycopg2
import sys
con = None
try:
con = psycopg2.connect(database='local', user='local', password='local',port='1970')
cur = con.cursor()
cur.execute('SELECT x FROM t')
f = open('test.sql', 'w')
for row in cur:
f.write("insert into t values (" + str(row) + ");")
except psycopg2.DatabaseError, e:
print 'Error %s' % e
sys.exit(1)
finally:
if con:
con.close()
Puis pour restaurer :
psql <dbname> <username> < test.sql
Bravo,