设为首页 收藏本站
查看: 999|回复: 0

[经验分享] PostgreSQL 8.0.0入门之创建数据库

[复制链接]

尚未签到

发表于 2016-11-21 10:29:29 | 显示全部楼层 |阅读模式
创建一个数据库
   看看你能否访问数据库服务器的第一个例子就是试着创建一个数据库。 一台运行着的 PostgreSQL 服务器可以管理许多数据库。 通常我们会为每个项目和每个用户单独使用一个数据库。  你的节点管理员可能已经为你创建了可以使用的数据库。 他应该已经告诉你这个数据库的名字。如果这样你就可以省略这一步, 并且跳到下一节。
  要创建一个新的数据库,在我们这个例子里叫 mydb,你可以使用下面的命令:
  $ createdb mydb
它应该生成下面这样的响应:
  CREATE DATABASE
如果这样,那么这一步就成功了,你就可以忽略本节余下的部分了。
  如果你看到类似下面这样的信息
  createdb: command not found
那么就是PostgreSQL没有安装好。要么是就根本没装上, 要么是你的搜索路径没有设置正确。尝试用绝对路径调用该命令试试:
  $ /usr/local/pgsql/bin/createdb mydb
在你的节点上这个路径可能不一样。和你的管理员联系或者看看安装指导获取正确的位置。
  另外一种响应可能是这样:
  createdb: could not connect to database template1: could not connect to server:
No such file or directory
        Is the server running locally and accepting
        connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
  这意味着该服务器没有启动,或者没有在 createdb 预期的地方启动。同样, 你也要检查安装指导或者找管理员。
  另外一个响应可能是这样:
  createdb: could not connect to database template1: FATAL:  user "joe" does not
exist
   在这里提到了你自己的登陆名。如果管理员没有为你创建 PostgreSQL 用户帐号, 就会发生这些现象。(PostgreSQL用户帐号和操作系统用户帐号是不同的。) 如果你是管理员,参阅 Chapter 17 获取创建用户帐号的帮助。 你需要变成安装PostgreSQL 的操作系统用户的身份(通常是 postgres)才能创建第一个用户帐号。 也有可能是赋予你的 PostgreSQL用户名和你的操作系统用户名不同; 这种情况下,你需要使用 -U 开关或者使用 PGUSER 环境变量声明你的 PostgreSQL 用户名。
  如果你有个数据库用户帐号,但是没有创建数据库所需要的权限,那么你会看到下面的东西:
  createdb: database creation failed: ERROR:  permission denied to create database
  并非所有用户都经过了创建新数据库的授权。 如果 PostgreSQL 拒绝为你创建数据库,那么你需要让节点管理员赋予你创建数据库的权限。出现这种情况时请咨询你的节点管理员。 如果你自己安装了 PostgreSQL,那么你应该以你启动数据库服务器的用户身份登陆然后参考手册完成权限的赋予工作。 [1]
  你还可以用其它名字创建数据库。 PostgreSQL 允许你在一个节点上创建任意数量的数据库。 数据库名必须是以字母开头并且小于63 个字符长。 一个方便的做法是创建和你当前用户名同名的数据库。 许多工具假设该数据库名为缺省数据库名,所以这样可以节省你的敲键。要创建这样的数据库,只需要键入
  $ createdb
  如果你再也不想使用你的数据库了,那么你可以删除它。 比如,如果你是数据库 mydb 的所有人(创建人), 那么你就可以用下面的命令删除它:
  $ dropdb mydb
   (对于这条命令而言,数据库名不是缺省的用户名。这样你就必须声明它。) 这个动作物理上将所有与该数据库相关的文件都删除并且不可取消, 因此做这件事之前一定要想清楚。
  Notes
   [1] 为什么这么干就行了? 解释:PostgreSQL 用户名是和操作系统用户账号分开的。 如果你与一个数据库联接,你可以选择以何种PostgreSQL 用户名进行联接; 如果你不选择,那么缺省就是你的当前操作系统账号。 如果这样,那么总有一个与操作系统用户同名的PostgreSQL 用户账号用于启动服务器, 并且通常这个用户都有创建数据库的权限。如果你不想以该用户身份登陆,那么你也可以在任何提防声明一个 -U 选项以选择一个联接的 PostgreSQL 用户名

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-303345-1-1.html 上篇帖子: PostgreSQL整体架构和存储源码的大体分析 下篇帖子: PostgreSQL用户创建删除及error while loading shared libraries解决方法
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

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