Postgres 常用命令

本地数据库拷贝:

windows:
createdb -T originalDb targetDb -U postgres
linux:
su postgres
createdb -T originalDb targetDb

异地数据库拷贝(参考):

1)将数据库拷生成
$ pg_dump -U postgres -O > .sql
如:$ pg_dump -U postgres -O postgres > /root/mydbBackup.sql
2)将生成的文件拷贝至目标机器
3)如果同名数据库已经存在,删除操作为:
$ psql -U postgres -c "drop database ;"
如:$ psql -U postgres -c "drop database mydb2;"
4)数据文件恢复必须在已经创建好的数据库的基础上
$ psql -U postgres -c "create database with owner encoding = 'UNICODE';"
如:$ psql -U postgres -c "create database mydb2 with owner postgres encoding = 'UNICODE';"
5)恢复数据库:
$ psql -U -d -f .sql
如:$ psql -U postgres -d mydb2 -f C:/mydbBackup.sql

联合更新

update table1 set field1 = (select field1 from table1_copy where table1.parent_id = table1_copy.id)

导入数据
psql dbname username < filename.sql
psql pgdb postgres < /root/sqlscript/pgdb-data.sql

你可能感兴趣的:(技术)