postgresql学习手册(客户端命令) .docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
postgresql学习手册(客户端命令)

零、口令文件: ?? ?在给出其它PostgreSQL客户端命令之前,我们需要先介绍一下PostgreSQL中的口令文件。之所以在这里提前说明该文件,是因为我们在后面的示例代码中会大量应用该文件,从而保证我们的脚本能够自动化完成。换句话说,如果在客户端命令执行时没有提供该文件,PostgreSQL的所有客户端命令均会被口令输入提示中断。 ?? ?在当前用户的HOME目录下,我们需要手工创建文件名为 .pgpass的口令文件,这样就可以在我们连接PostgreSQL服务器时,客户端命令自动读取该文件已获得登录时所需要的口令信息。该文件的格式如下: ?? ?hostname:port:database:username:password ?? ?以上数据是用冒号作为分隔符,总共分为五个字段,分别表示服务器主机名(IP)、服务器监听的端口号、登录访问的数据库名、登录用户名和密码,其中前四个字段都可以使用星号(*)来表示匹配任意值。见如下示例: ?? ?/ cat .pgpass ?? ?*:5432:postgres:postgres:123456 ?? ?CTRL+D ?? ?#.pgpass文件的权限必须为0600,从而防止任何全局或者同组的用户访问,否则这个文件将被忽略。 ?? ?/ chmod 0600 .pgpass ?? ?在学习后面的客户端命令之前,我们需要根据自己的应用环境手工创建该文件,以便后面所有的示例代码都会用到该口令文件, 这样它们就都可以以批处理的方式自动完成。 一、createdb: ?? ?创建一个新的PostgreSQL数据库。该命令的使用方式如下: ?? ?createdb [option...] [dbname] [description] ?? ?1. 命令行选项列表: 选项 说明 -D(--tablespace=tablespace) 指定数据库的缺省表空间。 -e(--echo) 回显createdb生成的命令并且把它发送到服务器。 -E(--encoding=encoding) 指定用于此数据库的字符编码方式。 -l(--locale=locale) 指定用于此数据库的本地化设置。 -O(--owner=owner) 指定新建数据库的拥有者,如果未指定此选项,该值为当前登录的用户。 -T(--template=template) 指定创建此数据库的模板数据库。 -h(--host=host) 指定PostgreSQL服务器的主机名。 -p(--port=port) 指定服务器的侦听端口,如不指定,则为缺省的5432。 -U(--username=username) 本次操作的登录用户名,如果-O选项没有指定,此数据库的Owner将为该登录用户。 -w(--no-password) 如果当前登录用户没有密码,可以指定该选项直接登录。 ??? 2. 应用示例: ??? #1. 以postgres的身份登录。(详情参照上面口令文件的内容)?? ? ?? ?/ psql ?? ?#2. 创建表空间。 ?? ?postgres=# CREATE TABLESPACE my_tablespace LOCATION /opt/PostgreSQL/9.1/mydata; ?? ?CREATE TABLESPACE ?? ?#3. 创建新数据库的owner。 ?? ?postgres=# CREATE ROLE myuser LOGIN PASSWORD 123456; ?? ?CREATE ROLE ?? ?postgres=# \q ?? ?#4. 创建新数据库,其中本次连接的登录用户为postgres,新数据库的owner为myuser,表空间为my_tablespace,新数据库名为mydatabase。 ?? ?/ createdb -U postgres -O myuser -D my_tablespace -e mydatabase ?? ?CREATE DATABASE mydatabase OWNER myuser TABLESPACE my_tablespace; ?? ?#5. 重新登录,通过查询系统表查看该数据库是否创建成功,以及表空间和所有者是否一致。 ?? ?/ psql ?? ?postgres=# SELECT datname,rolname,spcname FROM pg_database db, pg_authid au, pg_tablespace ts WHERE datname = mydatabase AND datdba = au.oid AND dattablespace = ts.oid; ?? ?? datname?? |

文档评论(0)

精华文库 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:7111022151000002

1亿VIP精品文档

相关文档