centos postgresql配置步骤

207
2025/2/12 6:31:29
栏目: 云计算
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在CentOS上配置PostgreSQL的步骤如下:

  1. 更新系统包: 首先,确保你的系统包是最新的。

    sudo yum update -y
    
  2. 安装PostgreSQL: 使用yum来安装PostgreSQL服务器和客户端工具。

    sudo yum install -y postgresql-server postgresql-contrib
    
  3. 初始化数据库: 安装完成后,初始化数据库。

    sudo /usr/pgsql-<version>/bin/postgresql-<version>-setup initdb
    
  4. 启动PostgreSQL服务: 启动PostgreSQL服务并设置为开机自启动。

    sudo systemctl start postgresql
    sudo systemctl enable postgresql
    
  5. 配置PostgreSQL: 编辑PostgreSQL的主要配置文件postgresql.conf和身份验证文件pg_hba.conf

    • 编辑postgresql.conf文件:

      sudo vi /etc/postgresql/<version>/main/postgresql.conf
      

      修改以下参数(根据你的需求进行调整):

      listen_addresses = '*'  # 允许所有IP连接
      port = 5432            # 设置监听端口
      max_connections = 100   # 设置最大连接数
      shared_buffers = 256MB  # 设置共享缓冲区大小
      work_mem = 64MB        # 设置工作内存大小
      maintenance_work_mem = 256MB  # 设置维护工作内存大小
      effective_cache_size = 768MB  # 设置有效缓存大小
      checkpoint_segments = 8  # 设置检查点段数
      checkpoint_completion_target = 0.9  # 设置检查点完成目标
      
    • 编辑pg_hba.conf文件:

      sudo vi /etc/postgresql/<version>/main/pg_hba.conf
      

      在文件末尾添加以下行以允许来自所有IP的连接:

      host all all 0.0.0.0/0 md5
      
  6. 重新加载配置文件: 重新加载PostgreSQL配置以应用更改。

    sudo systemctl reload postgresql
    
  7. 创建超级用户和管理员: 登录到PostgreSQL并创建一个超级用户和管理员。

    sudo -u postgres psql
    CREATE ROLE admin WITH LOGIN PASSWORD 'admin_password';
    ALTER ROLE admin SET client_encoding TO 'utf8';
    ALTER ROLE admin SET default_transaction_isolation TO 'read committed';
    ALTER ROLE admin SET timezone TO 'UTC';
    GRANT ALL PRIVILEGES ON DATABASE postgres TO admin;
    \q
    
  8. 创建数据库: 使用超级用户登录并创建一个新的数据库。

    sudo -u postgres psql
    CREATE DATABASE mydatabase;
    \q
    
  9. 配置防火墙: 确保防火墙允许PostgreSQL端口(默认是5432)。

    sudo firewall-cmd --permanent --add-service=postgresql
    sudo firewall-cmd --reload
    
  10. 测试连接: 使用psql客户端或其他数据库客户端工具来测试连接。

    psql -h localhost -U admin -d mydatabase
    

    输入密码后,如果成功连接,你将看到PostgreSQL的命令提示符。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: CentOS中Java编译时遇到权限问题怎么办