unubtu 安装pgsql
添加启动文件:cp /usr/local/postgresql/contrib/start-scripts/linux/etc/init.d/postgresql。修改/etc/init.d/postgresql文件的三个变量 路径和用户 postgresql。vi pg_hba.conf找到最下面这一行 ,这样局域网的人才能访问。进入data目录cd/usr/local/postgresql/d
·
ubuntu 安装
sudo apt-get update
sudo apt-get install libicu-dev libreadline-dev libxml2-dev libxslt-dev
https://www.postgresql.org/ftp/source/v16.4/ 下载地址

解压后从命名
mv /usr/local/postgresql-16.4 /usr/local/postgresql
useradd postgresql
mkdir -p /usr/local/postgresql/data
chown -R postgresql:postgresql /usr/local/postgresql
编译
./configure --prefix=/usr/local/postgresql --with-python --with-libxml --with-libxslt
make -j32 && make install -j32
三、 打开profile文件,添加环境变量
vim /etc/profile
#拉到profile文件最下端,将下属内容追加到profile文件最后
export PATH=/usr/local/postgresql/bin:$PATH
export PGHOME=/usr/local/postgresql
export PGDATA=/usr/local/postgresql/data/
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PGHOME/lib/
export PATH=$PGHOME/bin:$PATH:$HOME/bin
重新加载配置文件 source /etc/profile
进入data目录 cd /usr/local/postgresql/data/
在data 目录 vim postgresql.conf 配置文件
vim postgresql.conf
#修改允许访问的ip地址
listen_addresses = '*'
#端口
port = 5432
#内存大小。可以使用默认值
max_wal_size = 1GB
min_wal_size = 80MB
vi pg_hba.conf 找到最下面这一行 ,这样局域网的人才能访问。红色为新添加内容。
# IPv4 local connections:
host all all 127.0.0.1/32 trust
host all all 0.0.0.0/0 trust
添加启动文件:cp /usr/local/postgresql/contrib/start-scripts/linux /etc/init.d/postgresql
修改/etc/init.d/postgresql文件的三个变量 路径和用户 postgresql

数据初始化
su postgresql
./bin/initdb 或 /usr/local/postgresql/bin/initdb




添加用户
#创建一个超级管理员用户
CREATE USER superman SUPERUSER;
#创建一个有密码的用户
CREATE USER user01_pg WITH PASSWORD 'pgsql_pg';
#创建数据库
CREATE DATABASE test001 ;
赋予超级权限
ALTER ROLE user_pg CREATEROLE CREATEDB;
ALTER ROLE user_pg CREATEROLE SUPERUSER;

添加开机启动
sudo tee /etc/systemd/system/postgresql.service << 'EOF'
[Unit]
Description=PostgreSQL database server
After=network.target
[Service]
Type=forking
User=postgres
Group=postgres
Environment=PGDATA=/usr/local/postgresql/data
ExecStart=/usr/local/postgresql/bin/pg_ctl start -D ${PGDATA} -s -l ${PGDATA}/logfile -w -t 300
ExecStop=/usr/local/postgresql/bin/pg_ctl stop -D ${PGDATA} -s -m fast
ExecReload=/usr/local/postgresql/bin/pg_ctl reload -D ${PGDATA} -s
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable postgresql
sudo systemctl start postgresql
更多推荐
所有评论(0)