如何安装PostgreSQL

如何安装PostgreSQL,第1张

PostgreSQL安装:
一、windows下安装过程
安装介质:postgresql-913-1-windowsexe(46M),安装过程非常简单,过程如下:
1、开始安装:
2、选择程序安装目录:
注:安装 PostgreSQL 的分区最好是 NTFS 格式的。PostgreSQL 首要任务是要保证数据的完整性,而 FAT 和 FAT32 文件系统不能提供这样的可靠性保障,而且 FAT 文件系统缺乏安全性保障,无法保证原始数据在未经授权的情况下被更改。此外,PostgreSQL 所使用的"多分点"功能完成表空间的这一特征在FAT文件系统下无法实现。
然而,在某些系统中,只有一种 FAT 分区,这种情况下,可以正常安装 PostgreSQL,但不要进行数据库的初始化工作。安装完成后,在 FAT 分区上手动执行 initdbexe 程序即可,但不能保证其安全性和可靠性,并且建立表空间也会失败。
3、选择数据存放目录:
4、输入数据库超级用户和创建的OS用户的密码
注:数据库超级用户是一个非管理员账户,这是为了减少黑客利用在 PostgreSQL 发现的缺陷对系统造成损害,因此需要对数据库超级用户设置密码,如下图所示,安装程序自动建立的服务用户的用户名默认为 postgres。
5、设置服务监听端口,默认为5432
6、选择运行时语言环境
注:选择数据库存储区域的运行时语言环境(字符编码格式)。
在选择语言环境时,若选择"default locale"会导致安装不正确;同时,PostgreSQL 不支持 GBK 和 GB18030 作为字符集,如果选择其它四个中文字符集:中文繁体 香港(Chinese[Traditional], Hong Kong SAR)、中文简体 新加坡(Chinese[Simplified], Singapore)、中文繁体 台湾(Chinese[Traditional], Taiwan)和中文繁体 澳门(Chinese[Traditional], Marco SAR),会导致查询结果和排序效果不正确。建议选择"C",即不使用区域。
----我选择了default localt,安装正确;建议选择default localt。
7、安装过程(2分钟)
8、安装完成
安装完成后,从开始文件夹可以看到:
在安装目录可以看到:
其中:data存放数据文件、日志文件、控制文件、配置文件等。
uninstall-postgresqlexe用于卸载已安装的数据库管理系统。
pg_envbat里配置了数据库的几个环境变量,内容如下:
二、pgAdmin(大象)
对于每种数据库管理系统,都有相当多的设计与管理工具(可视化界面管理工具),有的是数据库厂商自己提供的(一般都至少有一个),有的是第三方公司开发的,你甚至可以自己写一个简单易用的管理工具。例如Oracle的Oracle SQL Developer(自己开发的)、PLSQL Developer(第三方公司开发的)、SQL Server Management Studio(自己开发的)、>1、windows下postgresql的安装
我下载的为xxx92exe一路默认安装即可。安装位置为C:\Program Files\PostgreSQL。
安装完毕后,在dos下执行命令
>net user
列出当前系统用户名称。我的用户名为Administrator。
>psql –U Administrator –d postgres
该命令表示通过数据库用户Administrator连接数据库postgres。
l 若显示psql不是内部或外部命令,则说明postgresql的bin文件路径没添加到windows系统中,右击“我的电脑”->”属性”->”高级”->”环境变量”->”Administrator”的用户变量,选中“PATH”,点击编辑,将”C:\Program Files\PostgreSQL\92\bin”添加进去,注意与前面的路径用”;”隔开。电脑重启生效。
l 若显示角色Administrator不存在,则必须在postgresql数据库中添加该用户才能使其可以登录。
在postgresql中
查询系统用户
postgres=#select from pg_user;
查询系统中的数据库
postgres=#select from pg_database;
说明一下:“template1”是Postgresql在初始化时自动创建的测试数据库。

创建postgresql数据库Administrator用户
方式1
在PostgreSQL中创建用户postgreSQL用户Administrator
用SQL Shell(psql)通过用户postgres登录PostgreSQL,创建用户Administrator,
postgres=#create user “Administrator”;
方式2
通过windows下dos创建postgresql用户Administrator
将PostgreSQL文件夹bin路径添加到系统环境中后重启生效
通过windows下dos创建postgresql用户是区分大小写的。
配置客户机访问
为了配置远程主机和用户可以连接到PostgreSQL服务,你需要pg_hbaconf文件。文件包含大量注释记录用于远程访问的选项。在我们的安装示例中,我们允许局域网中任何主机的任何用户访问服务器上的数据库。为了达到这个目的,我们添加以下的一行记录到文件尾:
host all all 19216800/16 trust
 这意味着所有IP地址由192168开始的计算机可以访问所有的数据库。最简单的使配置生效的方法就是重启服务器。
在dos下 *** 作,通过createuser –Uolduser –P newuser来创建。
比如我们想创建postgresql数据库用户Administrator。
>createuser –U postgre –P Administrator
这样创建的数据库用户Administrator没有创建数据库的权利,可以通过pgAdmin III登录进行查看。
若使其可以创建数据库可以参照下面内容进行设置:
>createuser –U postgre –s Administrator
这样具有创建数据库能力。

createuser的用法可以通过在dos中输入createuser –help查看。
MicrosoftWindows XP [版本 512600]
(C)版权所有 1985-2001 Microsoft Corp

C:\Documentsand Settings\Administrator>createuser --help
createuser创建一个新的 PostgreSQL 用户

使用方法:
createuser [选项] [用户名]

选项:
-c, --connection-limit=N 角色的连接限制(缺省: 没有限制)
-d, --createdb 此角色可以创建新数据库
-D, --no-createdb 此角色不可以创建新数据库(默认)
-e, --echo 显示发送到服务端的命令
-E, --encrypted 口令加密存储
-i, --inherit 角色能够继承它所属角色的权限
(这是缺省情况)
-I, --no-inherit 角色不继承权限
-l, --login 角色能够登录(这是缺省情况)
-L, --no-login 角色不能登录
-N, --unencrypted 口令不加密存储
-P, --pwprompt 给新角色指定口令
-r, --createrole 这个角色可以创建新的角色
-R, --no-createrole 这个角色没有创建其它角色的权限(默认)
-s, --superuser 角色将是超级用户
-S, --no-superuser 角色不能是超级用户(默认)
-V, --version 输出版本信息, 然后退出
--interactive 提示缺少角色名及其属性
而不是使用默认值
--replication 角色能启动复制
--no-replication 角色不能启动复制
-, --help 显示此帮助, 然后退出

联接选项:
-h, --host=HOSTNAM 数据库服务器所在机器的主机名或套接字目录
-p, --port=PORT 数据库服务器端口号
-U, --username=USERNAME 联接用户 (不是要创建的用户名)
-w, -no-password 永远不提示输入口令
-W, --password 强制提示输入口令

臭虫报告至<pgsql-bugs@postgresqlorg>

C:\Documentsand Settings\Administrator>

方式3
在C:\Program Files\PostgreSQL\92\bin文件夹下有可执行文件createuserexe,我双击后,该文件执行一闪就关闭,只好在dos中输入cmd打开窗口,将该文件拖入窗口中,在输入“ –U postgres –P Adiminisrator”然后回车,如下图所示,即可创建数据库用户Administrator。但此时该用户不具有创建database的能力,可以通过pgAdmin III查看。
psql的用法可以通过在dos下输入psql –help查看,如下图所示。
MicrosoftWindows XP [版本 512600]
(C) 版权所有1985-2001 Microsoft Corp

C:\Documentsand Settings\Administrator>psql --help
psql是PostgreSQL 的交互式客户端工具。
使用方法:
psql [选项] [数据库名称 [用户名称]]
通用选项:
-c,--command=命令 执行单一命令(SQL或内部指令)然后结束
-d, --dbname=数据库名称 指定要连接的数据库 (缺省:"Administrator")
-f, --file=文件名 从文件中执行命令然后退出
-l, --list 列出所有可用的数据库,然后退出
-v, --set=, --variable=名称=值
为psql变量(名称)设定值
-V, --version 输出版本信息, 然后退出
-X, --no-psqlrc 不读取启动文档(~/psqlrc)
-1 ("one"), --single-transaction
作为一个单一事务来执行命令文件
-, --help 显示此帮助, 然后退出

输入和输出选项:
-a, --echo-all 显示所有来自于脚本的输入
-e, --echo-queries 显示发送给服务器的命令
-E, --echo-hidden 显示内部命令产生的查询
-L, --log-file=文件名 将会话日志写入文件
-n, --no-readline 禁用增强命令行编辑功能(readline)
-o, --output=FILENAME 将查询结果写入文件(或 |管道)
-q, --quiet 以沉默模式运行(不显示消息,只有查询结果)
-s, --single-step 单步模式 (确认每个查询)
-S, --single-line 单行模式 (一行就是一条 SQL 命令)

输出格式选项 :
-A, --no-align 使用非对齐表格输出模式
-F, --field-separator=字符串
设字段分隔符(缺省:"|")
-H, --html HTML 表格输出模式
-P, --pset=变量[=参数] 设置将变量打印到参数的选项(查阅 \pset 命令)
-R, --record-separator=字符串
设定记录分隔符(缺省:换行符号)
-t, --tuples-only 只打印记录i
-T, --table-attr=文本 设定 HTML 表格标记属性(例如,宽度,边界)
-x, --expanded 打开扩展表格输出
-z, --field-separator-zero
设置字段分隔符为字节0
-0, --record-separator-zero
设置记录分隔符为字节0

联接选项:
-h, --host=主机名 数据库服务器主机或socket目录(缺省:"本地接口")
-p, --port=端口 数据库服务器的端口(缺省:"5432")
-U, --username=用户名 指定数据库用户名(缺省:"Administrator")
-w, --no-password 永远不提示输入口令
-W, --password 强制口令提示 (自动)

更多信息,请在psql中输入"\"(用于内部指令)或者"\help"(用于SQL命令),
或者参考PostgreSQL文档中的psql章节

臭虫报告至<pgsql-bugs@postgresqlorg>

C:\Documentsand Settings\Administrator>

PostgreSQL是一个强大开源的对象关系类型数据库系统,它能运行于几乎所有主要的 *** 作系统,包括Linux、Unix(AIX、BSD、HP-UX、SGIIRIX、MacOS、Solaris、Tru64)、WindowsOS。在这篇教程里,我们将学习如何在CentOS7/65/64server中建立PostgreSQL。1安装PostgreSQL首先根据你的服务器架构添加PostgreSQL库:对CentOS6x32bit:rpm-Uvhtcpfirewall-cmd--reload3访问PostgreSQL常用的命令提示符默认情况下数据库名和用户名都是postgres。切换至用户以执行相关 *** 作:su–postgres输入以下命令登陆:psql会有以下样例输出:psql(935)Type"help"forhelpPostgres=#可通过输入\q退出postgresql返回命令终端:4设置用户密码登陆至postgres命令提示符界面su–postgrespsql然后使用命令设置密码postgres=#\passwordpostgresEnternewpassword:Enteritagain:postgres=#\q输入命令以建立PostgreSQL系统管理工具postgres=#CREATEEXTENSIONadminpack;CREATEEXTENSION5创建用户和数据库例如:用户名:senthil密码:centos数据库名:mydb转到postgres用户su–postgres创建用户senthil$createusersenthil创建数据库$createdbmydb现在登陆至psql提示符界面,为用户senthil设置密码及授权对数据库mydb的访问:$psqlpsql(935)Type"help"forhelppostgres=#alterusersenthilwithencryptedpassword'centos';ALTERROLEpostgres=#grantallprivilegesondatabasemydbtosenthil;GRANTpostgres=#6删除用户和数据库首先转到postgres界面su–postgres输入命令$dropdb删除用户名可输入$dropuser7配置PostgreSQL-MD5认证MD5认证需要客户端提供一个MD5-encrypted密码以便身份验证。你需要编辑/var/lib/pgsql/93/data/pg_hbaconf文件:vi/var/lib/pgsql/93/data/pg_hbaconf添加或修改的行如下:[]#TYPEDATABASEUSERADDRESSMETHOD#"local"isforUnixdomainsocketconnectionsonlylocalallallmd5#IPv4localconnections:hostallall127001/32md5hostallall19216810/24md5#IPv6localconnections:hostallall::1/128md5[]重启postgresql服务以应用更改在CentOS6x系统中servicepostgresql-93restart在CentOS7系统中systemctlrestartpostgresql-938配置PostgreSQL-ConfigureTCP/IP默认情况下,TCP/IP连接是不可行的,所以其他计算机用户不能连接到postgresql。编辑文件/var/lib/pgsql/93/data/postgresqlconf可以允许连接:vi/var/lib/pgsql/93/data/postgresqlconf找到下面的行:[]#listen_addresses='localhost’[]#port=5432[]把两行都取消并设置为你的postgresql服务器IP地址或设置为“”监听所有客户端。如下所示:listen_addresses=''port=5432重启以应用更改在CentOS6x系统中:/etc/initd/postgresql-93restart在CentOS7系统中:systemctlrestartpostgresql-939使用phpPgAdmin管理PostgreSQLphpPgAdmin是使用PHP编写的基于web的管理工具,用于管理PostgreSQL。它只适用与PostgreSQLRPM库。如果你没有添加PostgreSQL库,你可以添加EPEL库。可根据下面的链接在CentOS6x中建立EPEL库


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10308273.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-07
下一篇 2023-05-07

发表评论

登录后才能评论

评论列表(0条)

保存