postgresql兴建用户_POSTGRESQL数据库在Windows下以管理员用户安装和简单命令

本文详细介绍了在Windows下安装PostgreSQL的过程,包括创建数据库超级用户、设置权限、初始化数据库,以及启动和停止服务的方法。同时,文章还对比了PostgreSQL与MySQL的部分常用命令,帮助用户更好地理解和操作数据库。
摘要由CSDN通过智能技术生成

最近因为用HYPERIC产品,装了一下Postgres数据库,下面简说下在WINDOWS下安装的情况。

下载那个直接解压版,解压

在"$PG"目录下创建一个rootpass.txt文件,内容为数据库的超级用户密码。可以填个“p”,方便后面登陆。准备工作到此结束,下面的步骤以管理员身份执行。

移动DLL文件[8.1.5及以上版本不需要这一步骤]:

cd $PG

move /y lib\comerr32.dllbin\

move /y lib\krb5_32.dllbin\

move /y lib\libeay32.dllbin\

move /y lib\libiconv-2.dll bin\

move /y lib\libintl-2.dll bin\

move /y lib\libpq.dllbin\

move /y lib\pthreadGC2.dll bin\

move /y lib\ssleay32.dllbin\

添加新的postgres用户,并将密码设为:p

net user postgres p /ADD /EXPIRES:NEVER /PASSWORDCHG:NO

net localgroup users postgres /delete

创建data目录并设置访问权限:

md data

cacls ./T /E /P postgres:R

cacls data /T /E /P postgres:C

POSTGRES不支持管理员状态运行,我们用RUNAS来做,如果失败,可以查下是不是有个SECOND LOGON服务是不是停了,启动一下即可。

初始化PostgreSQL数据库,切换用户时需要手动输入postgres用户的密码:p

runas /noprofile /env /user:postgres "bin\initdb -D data -E EUC_CN --locale=\"Chinese_People's Republic of China.936\" -A md5 -U postgres --pwfile=rootpass.txt"

这样就安装好了。需要说明的是数据库默认编码为:EUC_CN(GB2312),区域设置为:zh_CN.GBK,数据库超级用户名为:root,密码为rootpass.txt文件内容,使用md5认证。

以后可以使用:

runas /noprofile /env /user:postgres "bin\pg_ctl start -w -D data"

启动PG,使用:

runas /noprofile /env /user:postgres "bin\pg_ctl stop -D data -m smart"

关闭PG。

用登录:

runas /noprofile /env /user:postgres "bin\psql -U postgres"

登录后就可以创用户,创数据库。

一些命令对比:

PostgreSQL与MySQL命令比较

PostgreSQL

MySQL

服务启动:1)#service postgresql start2)#/etc/init.d/postgresql start3)#su – postgresql$pg_ctl startPostgreSQL的进程号:1210、1207、

服务启动:1)#service mysqld start2)#/etc/init.d/mysqld start3)#safe_mysqld&

MySQL的进程号为1663

第一次进入数据库:#su – postgres$createdb(建名为postgres的数据库)$psql

第一次进入数据库:

#mysqlmysql>(出现这个提示符说明成功)

创建用户:(用户Ajian,密码:123)#su – postgres

$psql

=#create user ajian with password ‘123’

创建用户:(用户Ajian,密码:123)#grant all privileges on *.* to ajian@"%" identified by "123"

(注意:同还可以分配权限,这里是ALL)

创建数据库(My):

#su – postgres

$psql

=#create database My with owner = ajian template = template1 encoding=’UNICODE’;

创建数据库(My):

1)#mysql

Mysql>create database My;

2)#mysqladmin create My

查看用户和数据库:

#su – postgres

$psql

=#\l(查看数据库)=#\du(查看用户)

查看用户和数据库:

1)#mysql

Mysql>show databases;(看数据库)

2)#mysqlshow

新建用户登录:

(首先修改配置文件)

# vi /var/lib/pgsql/data/pg_hba.conf(在最后加)

host all all 127.0.0.1 255.255.255.255 md5

再重启服务:#service postgresql restart

登录:#psql –h 127.0.0.1 –U ajian My

Password:

新建用户登录:

1)#mysql –u ajian –p(带口令登录)

2)#mysql

Mysql>use My;

(不带口令登录一般用于本机)

创建表(employee):

=#create table employee(

(#employee_id int primary key,

(#name char(8),

(#sex char(2));

创建表:

>create table employee(

->employee_id int primary key,

->name char(8),

->sex char(2));

查看表:

=#\dt

查看表:

>show tables;

查看表的结构:

=#\d employee

查看表的结构:

>sescribe employee;

向表中添加数据:

=#insert into employee values

-#(‘1’,’zhang’,’F’);

-#(‘2’,’chen’,’M’,);

向表中添加数据:

>insert into employee values

->(‘1’,’zhang’,’F’);

->(‘2’,’chen’,’M’,);

查看表的数据:

=#select * from emlpoyee

查看表的数据:

>select * from emlpoyee;

创建索引(IN_employee):

=#create index IN_employee on employee(name);

查看索引:

=#\di

删除索引:

=#drop index IN_employee on employee;

重建索引:

=#reindex table employee;(重建employee所有的)

=#reindex index IN_employee;(重建指定的)

创建索引(IN_employee):

1)>create index IN_employee on employee(name);

2)>alter table employee add index IN_employee(name);

查看索引:

>show index from employee;

删除索引:

1)>drop index IN_employee on employee;

2)>alter table emlpoyee drop index IN_employee;

删除表:

=#drop table employee;

删除表:

>drop table employee;

删除数据库:(注意命令前面的标志)

1)=#drop database ajian;

2)$dropdb ajian

删除数据库:(注意命令前面的标志)

1)>drop database ajian;

2)#mysqladmin drop ajian

有兴趣可以访问下我的生活博客:qqmovie.qzone.com

posted on 2007-08-12 15:56 我爱佳娃 阅读(5350) 评论(0)  编辑  收藏 所属分类: DB相关

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值