六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 981|回复: 0

Windows下对PostgreSQL数据库的操作

[复制链接]

升级  63.33%

39

主题

39

主题

39

主题

秀才

Rank: 2

积分
145
 楼主| 发表于 2013-1-30 01:41:26 | 显示全部楼层 |阅读模式
如果直接创建数据库,则会出现下列问题
C:\Program Files\PostgreSQL\8.2\bin>createdb testdb
createdb: 无法联接到数据库 postgres: FATAL:  role "Administrator" does not exist


在windows下,createdb and createuser 在后面都必须加上用户名,如果不加的话psql会认为你登录系统的名

字就是执行这个操作的用户, 所以要
createdb 数据库名 -U 用户名
在做完所有操作后,系统会提示你输入postgres这个用户的密码

1.创建数据库,
C:\Program Files\PostgreSQL\8.2\bin>createdb 数据库名  -U  用户名
CREATE DATABASE
2.连接数据库
C:\Program Files\PostgreSQL\8.2\bin>psql sss -U qyc
Welcome to psql 8.2.4, the PostgreSQL interactive terminal.

Type:  \copyright for distribution terms
       \h for help with SQL commands
       \? for help with psql commands
       \g or terminate with semicolon to execute query
       \q to quit

sss=# \d
                   List of relations
Schema |           Name            | Type  |  Owner
--------+---------------------------+-------+----------
public | pg_buffercache            | view  | postgres
public | pg_freespacemap_pages     | view  | postgres
public | pg_freespacemap_relations | view  | postgres
public | pg_ts_cfg                 | table | postgres
public | pg_ts_cfgmap              | table | postgres
public | pg_ts_dict                | table | postgres
public | pg_ts_parser              | table | postgres
(7 rows)

sss=# \q


PostgreSQL数据库常用操作命令:

Createdb  创建数据库  
Createuser  创建数据库用户  
Dropdb  删除数据库  
Dropuser  删除数据库用户  
Psql  交互式PostgreSQL前端工具,可以用它来操作数据库  
Initdb  初始化postgreSQL数据库  

psql -l 列出所有的数据库

\dt 命令是显示表
\di 显示索引
\ds 显示序列
\dv 显示视图
\dp 显示权限
\dS 显示系统表
\dl 显示 lobjects
\d tablename 显示表的结构/索引/序列
\d indexname 显示索引的详细信息
\d 显示数据库中所有的表或者select * from pg_tables where schemaname ='public';

进入数据库:psql 数据库名
显示表结构:\d 表名
退出当前数据库:\q

exit 返回到Linux命令行;

备份数据库:
Pg_dump 数据库名 –U  用户名 > 备份名.sql

例如:
备份cigarette数据库中的内容
C:\Program Files\PostgreSQL\8.2\bin>pg_dump cigarette -U postgres > cigarett.sql
备份表中的内容

C:\Program Files\PostgreSQL\8.2\bin>pg_dump -t tbl_product cigarette -U postgres
> xi.sql

恢复备份cigarett.sql到cig数据库中
C:\Program Files\PostgreSQL\8.2\bin>psql cig -U postgres < cigarett.sql
恢复数据库:

Psql 数据库名 –U 用户名 < 备份的数据库

执行customer.sql中的内容
> C:\Program Files\PostgreSQL\8.2\bin>psql -f customer.sql test -U postgres
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表