你的浏览器禁用了JavaScript, 请开启后刷新浏览器获得更好的体验!
输入关键字进行搜索
搜索:
没有找到相关结果
nccloud
1.安装准备操作系统:CentOS Linux 7 (Core)PostgreSQL版本:PostgreSQL16.0Pg安装包下载:https://www.postgresql.org/ftp/source/2.安装依赖包yum install -y perl-ExtUtils-Embed readline-devel zlib-devel pam-devel libxml2-devel libxslt-devel openldap-devel python-devel gcc-c++ openssl-devel cmake报错:Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock error was 14:curl#6 – “Could not resolve host:mirrorlist.centos.org:未知的错误”。检查网络配置正常,报错没解决,后来决定更新yum源。备份当前的yum源:mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup下载新的CentOS-Base.repo 到/etc/yum.repos.d/:CentOS 7wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo或者curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo清空并生成缓存:yum clean allyum makecache(备注:yum 会把下载的软件包和header存储在cache中(默认路径/var/cache/yum/),而不自动删除。如果觉得占用磁盘空间,可以使用yum clean指令进行清除,更精确的用法是yum clean headers清除header,yum clean packages清除下载的rpm包,yum clean all全部清除。)再次安装依赖包:yum install -y perl-ExtUtils-Embed readline-devel zlib-devel pam-devel libxml2-devel libxslt-devel openldap-devel python-devel gcc-c++ openssl-devel cmake3.创建目录创建目录:mkdir -p /opt/pgsql/postgresql解压安装包,进入解压后的文件:tar zxvf postgresql-16.0.tar.gz编译postgresql源码:./configure --prefix=/opt/pgsql/postgresql源码编译安装:make && make install4.创建用户组、用户groupadd postgresuseradd -g postgres postgresid postgres5.创建postgresql的数据主目录并修改文件所有者mkdir datachown postgres:postgres datals -al6.配置环境变量配置环境变量:进入home/postgre目录,编辑修改.bash_profile文件。插入如图内容(根据个人的安装路径编辑):source .bash_profile使环境变量生效7.使用initdb初始化数据库su - postgres切换到postgre用户initdb初始化数据库8.配置服务进入/opt/pgsql/postgresql/data目录下的Postgresql.conf,配置postgreSQL服务的相应参数。参数“listen_addresses”表示监听的IP地址,默认是在localhost处监听,只接受来自本机的localhost的连接请求,这会让远程的主机无法登陆到数据库。将行开头的#号去掉,把这个地址改为*,就可以监听本地的所有地址。进入/opt/pgsql/postgresql/data目录下的pg_hba.conf文件,插入如图内容,这样局域网的人才能访问。9.设置PostgreSQL开机自启动su root切换到root用户cd /root/postgresql-16.0/contrib/start-scripts进入contrib/start-scriptschmod a+x linuxcp linux /etc/init.d/postgresqlvi /etc/init.d/postgresql添加linux文件属性并复制到/etc/init.d目录下,更名为postgresql然后修改/etc/init.d/postgresql文件的两个变量(PostgreSQL的开机自启动脚本位于postgreSQL源码目录的contrib/start-scripts路径下,Linux文件是Linux系统上的启动脚本)设置postgresql服务开机自启动:chkconfig --add postgresqlchkconfig10.设置防火墙systemctl status firewalld检查防火墙状态,这里已经启动了firewall-cmd --permanent --zone=public --add-service=postgresql添加postgresql服务到防火墙firewall-cmd --reload加载11.启动数据库启动PostgreSQL服务,查看相关进程,尝试登录service postgresql startps -ef | grep postgressu – postgrespsql
在筑梦之路中,PostgreSQL数据库是一个不可或缺的组件。本文将详细介绍如何通过yum、编译和docker三种方式安装PostgreSQL 16数据库,以帮助读者根据实际需求选择合适的安装方式。一、yum方式安装安装yum源首先,需要安装PostgreSQL的yum源。可以访问PostgreSQL的官方网站下载相应的yum源配置文件,并按照说明进行安装。执行yum命令安装完成后,可以通过执行以下命令来安装PostgreSQL 16数据库:sudo yum install postgresql-16初始化数据库安装完成后,需要初始化数据库并启动服务。可以使用以下命令:sudo postgresql-16-setup initdbsudo systemctl start postgresql-16二、编译方式安装获取源码首先,需要从PostgreSQL的官方网站下载相应的源码包。可以访问PostgreSQL的官方网站,选择适合自己操作系统的版本进行下载。解压源码包将下载的源码包解压到指定的目录中。可以使用以下命令:tar -zxvf postgresql-16.tar.gzcd postgresql-16配置编译选项在解压后的目录中,需要配置编译选项。可以使用以下命令:shell ./configure --prefix=/usr/local/pgsql-16 --with-pgport=5432 --with-perl --with-python --with-tcl --with-openssl --with-pam --without-ldap --without-krb5 --without-pam --without-libiconv --with-identmap=ident --with-readline --with-uuid-ossp --with-libxml --with-xslt --with-gs--with-ossp make && sudo make install其中,—prefix参数指定安装路径,—with-pgport指定端口号,—with-perl、—with-python等参数分别指定是否启用Perl、Python等扩展。可以根据实际需求进行配置。编译安装执行以下命令进行编译和安装:shell make && sudo make install编译完成后,PostgreSQL 16数据库将被安装到指定的目录中。初始化数据库进入安装目录下的bin目录,执行以下命令来初始化数据库:shell ./initdb -D /usr/local/pgsql-16/data初始化完成后,可以启动数据库服务。执行以下命令:shell ./pg_ctl -D /usr/local/pgsql-16/data -l logfile start启动成功后,可以通过psql等工具连接到数据库进行使用。三、docker方式安装拉取镜像文件首先,需要从Docker Hub上拉取PostgreSQL 16的镜像文件。可以使用以下命令:shelldocker pull postgres:16这将从Docker Hub上下载PostgreSQL 16的镜像文件。运行容器实例化数据库服务执行以下命令来运行容器并实例化数据库服务:shelldocker run --name mydb -e POSTGRES_PASSWORD=mysecretpassword -d postgres:16其中,—name参数指定容器的名称,POSTGRES_PASSWORD参数设置数据库的密码,-d参数表示在后台运行容器。容器运行后,PostgreSQL 16数据库将被启动并在其中运行。默认情况下,容器的端口号为5432。可以通过以下命令连接到容器:shelldocker exec -it mydb psql -U postgres这将连接到名为mydb的容器中的PostgreSQL数据库,并使用postgres用户进行登录。总结:通过yum、编译和docker三种方式都可以安装PostgreSQL 16数据库。yum方式适合批量部署和自动化部署场景;编译方式可以根据实际需求定制安装选项;docker方式则适合快速部署和容器化场景。根据实际需求选择合适的安装方式可以更好地满足项目需求。
要回复问题请先登录或注册
2 个回复
nccloud
1.安装准备
操作系统:CentOS Linux 7 (Core)
PostgreSQL版本:PostgreSQL16.0
Pg安装包下载:https://www.postgresql.org/ftp/source/
2.安装依赖包
yum install -y perl-ExtUtils-Embed readline-devel zlib-devel pam-devel libxml2-devel libxslt-devel openldap-devel python-devel gcc-c++ openssl-devel cmake
报错:Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock error was 14:curl#6 – “Could not resolve host:mirrorlist.centos.org:未知的错误”。
检查网络配置正常,报错没解决,后来决定更新yum源。
备份当前的yum源:
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
下载新的CentOS-Base.repo 到/etc/yum.repos.d/:
CentOS 7
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
清空并生成缓存:
yum clean all
yum makecache
(备注:yum 会把下载的软件包和header存储在cache中(默认路径/var/cache/yum/),而不自动删除。如果觉得占用磁盘空间,可以使用yum clean指令进行清除,更精确的用法是yum clean headers清除header,yum clean packages清除下载的rpm包,yum clean all全部清除。)
再次安装依赖包:
yum install -y perl-ExtUtils-Embed readline-devel zlib-devel pam-devel libxml2-devel libxslt-devel openldap-devel python-devel gcc-c++ openssl-devel cmake
3.创建目录
创建目录:mkdir -p /opt/pgsql/postgresql
解压安装包,进入解压后的文件:tar zxvf postgresql-16.0.tar.gz
编译postgresql源码:./configure --prefix=/opt/pgsql/postgresql
源码编译安装:make && make install
4.创建用户组、用户
groupadd postgres
useradd -g postgres postgres
id postgres
5.创建postgresql的数据主目录并修改文件所有者
mkdir data
chown postgres:postgres data
ls -al
6.配置环境变量
配置环境变量:进入home/postgre目录,编辑修改.bash_profile文件。
插入如图内容(根据个人的安装路径编辑):
source .bash_profile使环境变量生效
7.使用initdb初始化数据库
su - postgres切换到postgre用户
initdb初始化数据库
8.配置服务
进入/opt/pgsql/postgresql/data目录下的Postgresql.conf,配置postgreSQL服务的相应参数。
参数“listen_addresses”表示监听的IP地址,默认是在localhost处监听,只接受来自本机的localhost的连接请求,这会让远程的主机无法登陆到数据库。将行开头的#号去掉,把这个地址改为*,就可以监听本地的所有地址。
进入/opt/pgsql/postgresql/data目录下的pg_hba.conf文件,插入如图内容,这样局域网的人才能访问。
9.设置PostgreSQL开机自启动
su root切换到root用户
cd /root/postgresql-16.0/contrib/start-scripts进入contrib/start-scripts
chmod a+x linux
cp linux /etc/init.d/postgresql
vi /etc/init.d/postgresql
添加linux文件属性并复制到/etc/init.d目录下,更名为postgresql然后修改/etc/init.d/postgresql文件的两个变量(PostgreSQL的开机自启动脚本位于postgreSQL源码目录的contrib/start-scripts路径下,Linux文件是Linux系统上的启动脚本)
设置postgresql服务开机自启动:
chkconfig --add postgresql
chkconfig
10.设置防火墙
systemctl status firewalld检查防火墙状态,这里已经启动了
firewall-cmd --permanent --zone=public --add-service=postgresql添加postgresql服务到防火墙
firewall-cmd --reload加载
11.启动数据库
启动PostgreSQL服务,查看相关进程,尝试登录
service postgresql start
ps -ef | grep postgres
su – postgres
psql
nccloud
在筑梦之路中,PostgreSQL数据库是一个不可或缺的组件。本文将详细介绍如何通过yum、编译和docker三种方式安装PostgreSQL 16数据库,以帮助读者根据实际需求选择合适的安装方式。
一、yum方式安装
安装yum源
首先,需要安装PostgreSQL的yum源。可以访问PostgreSQL的官方网站下载相应的yum源配置文件,并按照说明进行安装。
执行yum命令
安装完成后,可以通过执行以下命令来安装PostgreSQL 16数据库:
sudo yum install postgresql-16
初始化数据库
安装完成后,需要初始化数据库并启动服务。可以使用以下命令:
sudo postgresql-16-setup initdb
sudo systemctl start postgresql-16
二、编译方式安装
获取源码
首先,需要从PostgreSQL的官方网站下载相应的源码包。可以访问PostgreSQL的官方网站,选择适合自己操作系统的版本进行下载。
解压源码包
将下载的源码包解压到指定的目录中。可以使用以下命令:
tar -zxvf postgresql-16.tar.gz
cd postgresql-16
配置编译选项
在解压后的目录中,需要配置编译选项。可以使用以下命令:
shell ./configure --prefix=/usr/local/pgsql-16 --with-pgport=5432 --with-perl --with-python --with-tcl --with-openssl --with-pam --without-ldap --without-krb5 --without-pam --without-libiconv --with-identmap=ident --with-readline --with-uuid-ossp --with-libxml --with-xslt --with-gs--with-ossp make && sudo make install其中,—prefix参数指定安装路径,—with-pgport指定端口号,—with-perl、—with-python等参数分别指定是否启用Perl、Python等扩展。可以根据实际需求进行配置。
编译安装
执行以下命令进行编译和安装:
shell make && sudo make install编译完成后,PostgreSQL 16数据库将被安装到指定的目录中。
初始化数据库
进入安装目录下的bin目录,执行以下命令来初始化数据库:
shell ./initdb -D /usr/local/pgsql-16/data初始化完成后,可以启动数据库服务。执行以下命令:
shell ./pg_ctl -D /usr/local/pgsql-16/data -l logfile start启动成功后,可以通过psql等工具连接到数据库进行使用。
三、docker方式安装
拉取镜像文件
首先,需要从Docker Hub上拉取PostgreSQL 16的镜像文件。可以使用以下命令:
shelldocker pull postgres:16这将从Docker Hub上下载PostgreSQL 16的镜像文件。
运行容器实例化数据库服务
执行以下命令来运行容器并实例化数据库服务:shelldocker run --name mydb -e POSTGRES_PASSWORD=mysecretpassword -d postgres:16其中,—name参数指定容器的名称,POSTGRES_PASSWORD参数设置数据库的密码,-d参数表示在后台运行容器。容器运行后,PostgreSQL 16数据库将被启动并在其中运行。默认情况下,容器的端口号为5432。可以通过以下命令连接到容器:shelldocker exec -it mydb psql -U postgres这将连接到名为mydb的容器中的PostgreSQL数据库,并使用postgres用户进行登录。总结:通过yum、编译和docker三种方式都可以安装PostgreSQL 16数据库。yum方式适合批量部署和自动化部署场景;编译方式可以根据实际需求定制安装选项;docker方式则适合快速部署和容器化场景。根据实际需求选择合适的安装方式可以更好地满足项目需求。