文章目录

写在前面

使用的Ubuntu版本:18.04

安装

  1. 安装postgresql

    $ sudo apt-get install postgresql
    
    • 如果失败可以更新一下包

      sudo apt-get update
      
  2. 安装成功后,可以查看psql的版本

    psql --version
    
    • 如果安装成功则输出

      psql (PostgreSQL) 9.5.25
      

    可以看出,这里的PostgreSQL版本为9.5

    安装成功后,postgresql会自动创建:一个数据库用户postgres(默认无密码)、一个数据> 库postgres、一个Linux用户postgres

  3. 修改一下Linux用户postgres的密码

    sudo passwd postgres
    
  4. 切换到Linux用户postgres

    su postgres
    
  5. 进入数据库命令行

    psql
    
    • 执行成功则输出

      psql (9.5.25)
      Type "help" for help.
      
      postgres=#
      
    • Postgresql的服务默认是开启的,如果没有,可以使用以下命令:

      sudo /etc/init.d/postgresql start   # 开启服务
      sudo /etc/init.d/postgresql stop    # 关闭服务
      sudo /etc/init.d/postgresql restart # 重启服务
      
  • 查看Postgresql的数据库目录(数据存储在哪)

    在psql的命令行下,执行SHOW data_directory;

    postgres=# SHOW data_directory;
            data_directory
    ------------------------------
     /var/lib/postgresql/9.5/main
    (1 row)
    

    /var/lib/postgresql/9.5/main就是数据库目录

配置(可选)

要使其他计算机能够连接到你的 PostgreSQL 服务器
  1. 编辑该文件

    sudo vi /etc/postgresql/9.5/main/postgresql.conf
    

    /etc/postgresql/9.5/main/postgresql.conf

    其中9.5是PostgreSQL的版本,要根据本地的版本而定

    找到*#listen_addresses = 'localhost'*,修改为

    listen_addresses = '*'
    

    如果要允许 IPv4 和 IPv6 连接,请将 ‘localhost’ 替换为 ‘::’

    listen_addresses = '::'
    
修改数据库目录
  1. 创建一个数据库目录(你需要的位置)

    mkdir 目录名
    

    例如我创建的是

    mkdir /home/test/pg_db
    
  2. 关闭Postgresql服务

    sudo service postgresql stop
    
  3. 复制数据(从默认数据库目录复制到你指定的数据库目录

    sudo cp -rf  postgresql的默认数据库目录 你指定的数据库目录
    

    我执行的是

    sudo cp -rf /var/lib/postgresql/9.5/main /home/test/pg_db
    
  4. 权限设置

    sudo chown -R postgres:postgres 你指定的数据库目录
    sudo chmod 700 你指定的数据库目录
    

    我执行的是

    sudo chown -R postgres:postgres /home/test/pg_db
    sudo chmod 700 /home/test/pg_db
    
  5. 修改postgresql的data_directory (配置文件中指定的数据库目录)

    sudo vi /etc/postgresql/9.5/main/postgresql.conf
    

    data_directory = '/var/lib/postgresql/9.5/main' # use data in another directory修改为:

    data_directory = '你指定的数据库目录'
    

    我执行的是

    data_directory = '/home/test/pg_db'
    
  6. 启动Postgresql服务

    sudo service postgresql start
    
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐