#读者注意:本文可以选择不看解释,直接执行每段的0中的代码

(〇):一些概念(可以跳过直接使用(一)0的代码)

1. 客户端:psql。postgreSQL的命令行客户端程序,在终端输入psql进入postgreSQL数据库

2. 账户:与我们常用的mysql不同,使用postgresSQL数据库无须选择数据库账户,在类unix系统下,postgreSQL直接使用你的当前系统账户作为数据库账户。

默认的,在创建伊始,postgres生成一个名为postgres的数据库和一个名为postgres的数据库超级用户,同时还生成了一个名为postgres的Linux系统用户,我们可以通过cat /etc/passwd 命令看到它。

如果要想像mysql一样,使用另外的数据库账户,则需要另行修改。

(一) : 基本配置

0. 代码(不愿意看详情的可以照着敲)

  1. sudo apt install postgresql
  2. /etc/init.d/postgresql status
  3. /etc/init.d/postgresql start
  4. sudo passwd postgres
  5. su - postgres
  6. psql​
  7. ALTER USER postgres WITH PASSWORD 'abcdefg';

1. 安装:sudo apt install postgresql

2. 查看postgresql服务状况(默认是运行的,此步可以跳过)

(1)查看:/etc/init.d/postgresql status

(2)停止:/etc/init.d/postgresql stop

(3)开始:/etc/init.d/postgresql start

3. postgresql将为系统创建的账户:postgres

3.(1): 建议更改linux的账户的postgres账户的密码:sudo passwd postgres

4. 进入postgre账户:su - postgres

5. 登录数据库:psql

5.(1) 修改postgreSQL的postgres账户的密码为“abcdefg”:ALTER USER postgres WITHPASSWORD encrypted 'abcdefg';

(二):进阶:新建一个账户

以下假设你有一个linux用户"Bob",你要为他建立一个叫“Bob”的密码为“abcdefg”的账户

0. 代码:

  1. create user Bob with password 'abcdefg';
  2. create database Bob owner Bob;
  3. grant all privileges on database Bob to Bob;​

0.1. 其实通过第一步,你的数据库就可以使用了,而且如果你更改了postgreSQL为你创建的postgre账户的密码,就是是很安全了。

然而,我们也可以选择使用自己的数据库账户。

(1)postgre的权限太大,你需要一个更安全的账户。

(1)你的当前系统账户是Bob,你想直接使用Bob这一身份进入数据库而不是切换至postgre。

(2)或者说你的程序调用不方便用postgre账户,需要新建一个数据库账户。

1. 创建一个叫“Bob”的密码为“abcdefg”的账户: create user Bob with password 'abcdefg';

2. 创建属于Bob的数据库(不可省略,必须为同名数据库,不可更改数据库名称为其它):

create database Bob owner Bob;

3.  赋权:grant all privileges on database Bob to Bob;​

4. 注意:

(1)通常从linux用户名同名数据库账户使用该账户,不需要输入数据库密码,你的数据库密码通常是用来第三方程序连接的,比方说数据库可视化软件DBevar,比方说远程连接,比方说就你自己的脚本。

(三)开启本地账户登录模式:

0. 代码:

  1. sudo vim /etc/postgresql/*/main/pg_hba.conf
  2. 将local all postgres peer改为local all postgres md5,wq退出
  3. sudo /etc/init.d/postgresql reload
  4. psql -U postgres

1. 修改postgresql配置的本地机器权限,使所有用户都可以交叉进入

sudo vim /etc/postgresql/*/main/pg_hba.conf
    将local all postgres peer改为local all postgres md5,wq退出

(如果改成trust,则不需要输入密码,但不建议这么做)

2. 重载配置:sudo /etc/init.d/postgresql reload

3. 加参数 -U设置进入仓库的用户(此处进入的是postgres):psql -U postgres, 然后输入密码。

(四)允许远程登录:

0. 代码:

  1. sudo vim /etc/postgresql/*/main/postgresql.conf
  2. 搜索文件中listen_addresses,讲注释去掉,值改为*,wq退出
  3. sudo vim /etc/postgresql/*/main/pg_hba.conf
  4. 在最下面添加一行:host   all    all    0.0.0.0/0    md5, wq退出
  5. sudo /etc/init.d/postgresql reload

1. 修改两个配置文件:

(1)postgresql.conf: sudo vim /etc/postgresql/*/main/postgresql.conf,

搜索文件中listen_addresses,讲注释去掉,值改为*,wq退出

(2)pg_hba.conf: sudo vim /etc/postgresql/*/main/pg_hba.conf

在最下面添加一行:host   all    all    0.0.0.0/0    md5, wq退出

(3)重载配置 :sudo /etc/init.d/postgresql reload

(五)常用指令:

1. 登录指令:

(1)-U指定用户

(2)-d指定数据库,

(3)-h指定服务器,

(4)-p指定端口。

可以这样用:

完整的登录指令:psql -U dbuser -d somedb -h 127.0.0.1 -p 5432

登录linux系统用户名的同名账户的某个仓库:psql somedb

登录linux系统用户名的同名账户的同名仓库:psql

2. 控制台命令:

如果你过去是mysql用户,你会遗憾地发现mysql的一些如同show databases; show tables;use somedatabase 等指令在postgreSQL是行不通的。

  • \h:查看SQL命令的解释,比如\h select。
  • \?:查看psql命令列表。
  • \l:列出所有数据库。
  • \c [database_name]:连接其他数据库。
  • \d:列出当前数据库的所有表格。
  • \d [table_name]:列出某一张表格的结构。
  • \du:列出所有用户。
  • \e:打开文本编辑器。
  • \conninfo:列出当前数据库和连接的信息。

3。 数据库命令:

几乎所有的sql命令都是通用的,大家自行查找使用。

linux debian 9 配置postgresSQL数据库的更多相关文章

  1. Kali Linux 下安装配置MongoDB数据库 ubuntu 下安装配置MongoDB源码安装数据库

    Kali Linux 下安装配置MongoDB数据库   1.下载mongodb.tgz 压缩包: 2.解压到:tar -zxvf mongodb.tgz /usr/local/mongodb 3.创 ...

  2. linux debian 9 / centos 7配置postgresSQL数据库

    #读者注意:本文可以选择不看解释,直接执行每段的0中的代码 (〇):一些概念(可以跳过直接使用(一)0的代码) 1. 客户端:psql.postgreSQL的命令行客户端程序,在终端输入psql进入p ...

  3. Linux下安装配置MongoDB数据库

    说明: 操作系统:CentOS 5.X 64位 IP地址:192.168.21.130 实现目的: 安装配置MongoDB数据库 具体操作: 一.关闭SElinux.配置防火墙 1.vi /etc/s ...

  4. 虚拟机中ubuntu-16.04 Linux系统下配置mysql数据库,并在windows下使用navicat远程连接

    Linux系统下mysql数据库安装配置步骤: 1.在服务器上安装mysql:sudo apt-get install mysql-server sudo apt-get install mysql- ...

  5. linux下安装 配置 redis数据库

    通过终端命令安装(推荐): 1 确保更新源服务器能正常使用 如果没有更换更新源服务器,那么可能一直都下不了软件.欢迎参考我之前的博文来更换成国内的镜像服务器http://www.cnblogs.com ...

  6. Linux CentOS安装配置MySQL数据库

    没什么好说的,直接正面刚吧. 安装mysql数据库 a)下载mysql源安装包:wget http://dev.mysql.com/get/mysql57-community-release-el7- ...

  7. 【转载】CentOS6.5_X64下安装配置MongoDB数据库

    [转载]CentOS6.5_X64下安装配置MongoDB数据库 2014-05-16 10:07:09|  分类: 默认分类|举报|字号 订阅      下载LOFTER客户端 本文转载自zhm&l ...

  8. Linux下oracle11gR2系统安装到数据库建立配置及最后oracle的dmp文件导入一站式操作记录

    简介 之前也在linux下安装过oralce,可每次都是迷迷糊糊的,因为大脑一片空白,网上随便看见一个文档就直接复制,最后搞了乱七八糟,虽然装上了,却乱得很,现在记录下来,希望能给其他网上朋友遇到问题 ...

  9. Linux下安装配置MongoDB 3.0.x 版本数据库

    说明: 操作系统:CentOS 5.X 64位 IP地址:192.168.21.128 实现目的: 安装配置MongoDB数据库 具体操作: 一.关闭SElinux.配置防火墙 1.vi /etc/s ...

随机推荐

  1. Python学习笔记3

    __slots__ 如果我们想要限制class的属性怎么办?比如,只允许对Student实例添加name和age属性. 为了达到限制的目的,Python允许在定义class的时候,定义一个特殊的__s ...

  2. 安装oracle后登录时出现 ERROR: ORA-01031 insufficient privileges

    运行环境:在自己笔记本电脑(win10)上安装测试 操作系统版本:64位win8.1 Oracle版本:64位 oracle 11g 安装oracle 成功后//以管理员身份登录oracle 在cmd ...

  3. window 使用git 非ssh key 面密码登录

    Windows下使用git bash时,总是提示输入用户名密码,严重影响了开发效率,经搜索查找找到了如下有效的解决方案,屡试不爽! 1.先创建存储用户名密码的文件 ,在home文件夹,一般是 C:\D ...

  4. beanshell postprocessor解决编码

    beanshell postprocessor  String s=new String(prev.getResponseData(),"UTF-8");        char  ...

  5. MongoDB学习之——安装

    MongoDB安装 说明: 本次安装教程: 版本:mongoDB-3.2.4 安装环境:windows 10 ,64位操作系统 准备:安装包.Robomongo(客户端用于查看mongoDB里面的数据 ...

  6. Thread类源码剖析

    目录 1.引子 2.JVM线程状态 3.Thread常用方法 4.拓展点 一.引子 说来也有些汗颜,搞了几年java,忽然发现竟然没拜读过java.lang.Thread类源码,这次特地拿出来晒一晒. ...

  7. 项目管理svn

    https://nchc.dl.sourceforge.net/project/tortoisesvn/1.9.6/Application/TortoiseSVN-1.9.6.27867-x64-sv ...

  8. Java 多线程(四) 多线程访问成员变量与局部变量

    先看一个程序例子: public class HelloThreadTest { public static void main(String[] args) { HelloThread r = ne ...

  9. 交叉编译器安装 gcc version 4.3.3 (Sourcery G++ Lite 2009q1-203)

    安装环境    :ubuntu 14.04 安装包       :toolchain.tar.gz 编译器版本:gcc version 4.3.3 (Sourcery G++ Lite 2009q1- ...

  10. 201521123083《Java程序设计》第13周学习总结

    本次作业参考文件 正则表达式参考资料 1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 书面作业 1. 网络基础 1.1 比较ping www.bai ...