在Linux环境下安装和部署PostgreSQL是一项常见的任务,尤其是在开发和生产环境中。下面将详细介绍在Ubuntu和CentOS这两种常见的Linux发行版上安装PostgreSQL的步骤。

在Ubuntu上安装PostgreSQL

  1. 更新系统包: 在安装任何新软件之前,建议先更新系统的包管理器缓存,以确保获取最新的软件。

bash sudo apt update sudo apt upgrade

  1. 安装PostgreSQL和相关工具: 使用下面的命令安装PostgreSQL及其开发库和客户端工具。

bash sudo apt install postgresql postgresql-contrib

postgresql-contrib是PostgreSQL的附加模块,包含了一些额外的功能,如数据类型、索引和表等。

  1. 检查PostgreSQL状态: 安装完成后可以查看PostgreSQL的服务状态。

bash sudo systemctl status postgresql

如果服务正在运行,可以看到类似于“active (exited)”的状态。

  1. 访问PostgreSQL命令行界面: 默认情况下,PostgreSQL使用一个名为postgres的用户。我们可以切换到该用户,并进入PostgreSQL命令行界面。

bash sudo -i -u postgres psql

  1. 创建新用户和数据库: 进入psql后,可以创建一个新的数据库用户和数据库。

sql CREATE USER myuser WITH ENCRYPTED PASSWORD 'mypassword'; CREATE DATABASE mydb WITH OWNER myuser;

  1. 设置数据库权限: 可以授予刚刚创建的用户访问数据库的权限。

sql GRANT ALL PRIVILEGES ON DATABASE mydb TO myuser;

  1. 退出psql: 完成操作后,可以使用\q命令退出psql。

sql \q

  1. 配置远程访问(可选): 如果需要允许远程连接到PostgreSQL,需要编辑postgresql.confpg_hba.conf文件。

bash sudo nano /etc/postgresql/xx/main/postgresql.conf

修改listen_addresses'*',允许来自所有IP的连接。

plaintext listen_addresses = '*'

然后编辑pg_hba.conf以允许特定IP或子网连接:

bash sudo nano /etc/postgresql/xx/main/pg_hba.conf

添加如下内容:

plaintext host all all 0.0.0.0/0 md5

重启PostgreSQL服务以应用更改:

bash sudo systemctl restart postgresql

在CentOS上安装PostgreSQL

  1. 安装EPEL和Remi仓库: 使用以下命令安装EPEL和Remi仓库,以确保能够访问最新的PostgreSQL版本。

bash sudo yum install epel-release sudo yum install https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/p/postgresql12-12.8-1.el7.x86_64.rpm sudo yum install https://download.postgresql.org/pub/repos/yum/releasing/12/redhat/rhel-7-x86_64/pgdg-centos12-12-3.noarch.rpm

  1. 安装PostgreSQL: 运行以下命令安装PostgreSQL。

bash sudo yum install postgresql12 postgresql12-server postgresql12-contrib

  1. 初始化数据库: 安装完成后,需要初始化PostgreSQL数据库。

bash sudo /usr/pgsql-12/bin/postgresql12-setup initdb

  1. 启动PostgreSQL服务: 启动PostgreSQL服务并设置为开机自启。

bash sudo systemctl start postgresql-12 sudo systemctl enable postgresql-12

  1. 访问PostgreSQL: 使用如下命令切换到postgres用户,并进入PostgreSQL命令行。

bash sudo -i -u postgres psql

  1. 创建用户和数据库: 与在Ubuntu上的步骤相同,使用SQL创建用户和数据库,并设置权限。

sql CREATE USER myuser WITH ENCRYPTED PASSWORD 'mypassword'; CREATE DATABASE mydb WITH OWNER myuser; GRANT ALL PRIVILEGES ON DATABASE mydb TO myuser;

  1. 退出psql: 使用\q命令退出psql。

sql \q

  1. 配置远程访问(可选): 编辑/var/lib/pgsql/12/data/postgresql.conf/var/lib/pgsql/12/data/pg_hba.conf文件,按需配置监听地址以及允许的IP。

bash sudo nano /var/lib/pgsql/12/data/postgresql.conf

修改listen_addresses,然后在pg_hba.conf中添加允许远程IP的记录。

  1. 重启PostgreSQL服务: 应用配置更改后,重启PostgreSQL服务。

bash sudo systemctl restart postgresql-12

总结

以上是在Ubuntu和CentOS上安装和配置PostgreSQL的详细步骤。通过这些步骤,你可以在Linux上成功地创建PostgreSQL数据库,并进行基本的配置和管理。接下来,根据业务需求,你可以进一步深入学习PostgreSQL的高级特性,比如备份与恢复、性能优化等。

点赞(0) 打赏

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部