zoukankan      html  css  js  c++  java
  • 【转】linux下 postgres的一些操作总结

    参考博文:
     
     
    1. 基本操作命令

    • 安装完成后,PostgreSQL默认创建了名为postgres数据库用户账户,其与MySQL的root以及SQL Server的sa账户一样,是超级管理员账户,但与MySQL不一样的是,PostgreSQL还创建了名为postgres的Unix系统账户。
    • 和SQL Server的master数据库一样,PostgreSQL的默认数据库是template1,你可以用命令行管理工具psql来管理它,当然前提是要切换到postgres的系统账户。
    • 在其中的常用命令行命令如下:
    createdb dbname:新建数据库
    dropdb dbname:  删除数据库
    createuser [--superuser] username:创建用户
    dropuser username:                删除用户
    • 在交互式环境下常用到的命令:
    du:列出当前所有的用户信息
    l: 列出当前所有的数据库信息
    q: 退出
    password username:修改指定的user的密码
    dn:查看shema
    i:命令从指定的文件中读取命令
    c database: 选择database数据库
    2. 使用shell命令行方式添加用户和创建数据库
     
    PostgreSQL提供了命令行程序createuser和createdb,可以使用shell命令行方式添加用户和创建数据库。以新建用户dbuser和数据库exampledb为例。
     
    • 首先,创建数据库用户dbuser,并指定其为超级用户
      sudo -u postgres createuser --superuser dbuser
    • 然后,登录数据库控制台,设置dbuser用户的密码,完成后退出控制台。
      sudo -u postgres psql
      password dbuser
      q
    • 接着,在shell命令行下,创建数据库exampledb,并指定所有者为dbuser。
      sudo -u postgres createdb -O dbuser exampledbshell命令行登录数据库
    • 同样以上述例子中的用户和数据库为例,使用新用户的名义登录数据库
      psql -U dbuser -d exampledb -h 127.0.0.1 -p 5432
      上面命令的参数含义如下:-U指定用户,-d指定数据库,-h指定服务器,-p指定端口。输入上面命令以后,系统会提示输入dbuser用户的密码。输入正确,就可以登录控制台。

    3. Ubuntu下postgresql的服务开启关闭方式使用如下命令:

    • Usage: /etc/init.d/postgresql {start|stop|restart|reload|force-reload|status} [version ..]

    4. 连接数据库时出现一些认证情况的解决办法:

    • 如果出现下面的错误:

      psql: FATAL: Ident authentication failed for user "mypguser"

      请编辑你的pg_hba.conf,这个文件一般位于/etc/postgresql/X.Y/main/pg_hba.conf,X.Y是你的PostgreSQL的版本号,将下面行的peer改为trust:
    local all all trust # replace ident or peer with trust
    • 如果出现下面的错误:

      psql: FATAL: Peer authentication failed for user "mypguser"

      请仍然修改pg_hba.conf文件,该下面行的peer为md5:
    local all all md5 # replace peer with md5
    完成上面的修改后请重新加载postgresql:
    /etc/init.d/postgresql reload
  • 相关阅读:
    【leetcode】416. Partition Equal Subset Sum
    【leetcode】893. Groups of Special-Equivalent Strings
    【leetcode】892. Surface Area of 3D Shapes
    【leetcode】883. Projection Area of 3D Shapes
    【leetcode】140. Word Break II
    【leetcode】126. Word Ladder II
    【leetcode】44. Wildcard Matching
    【leetcode】336. Palindrome Pairs
    【leetcode】354. Russian Doll Envelopes
    2017.12.22 英语面试手记
  • 原文地址:https://www.cnblogs.com/wuling129/p/4763250.html
Copyright © 2011-2022 走看看