银河麒麟v4/v10 Ubuntu上添加服务过程-以编译postgressql数据库为例
1 首先联网安装依赖
apt-get install build-essential zlib1g-dev libssl-dev libreadline-dev libxml2-dev python-setuptools
2 下载安装包
下载地址:https://ftp.postgresql.org/pub/source/v16.3/postgresql-16.3.tar.gz
3 编译安装
mkdir -p /data/pgsql/postgresql
tar -zxvf postgresql-16.3.tar.gz
cd postgresql-16.3
./configure --prefix=/data/pgsql/postgresql --without-readline
make
make install
4 创建组、用户
groupadd postgres
useradd -g postgres postgres -m -s /bin/bash
passwd postgres 设置用户密码 1234qwer
5 创建数据目录
cd /data/pgsql/postgresql
mkdir data
chown postgres:postgres data
6 配置环境变量
cd /home/postgres/
ls -la
vi .profile打开文件填写以下内容
export PGHOME=/data/pgsql/postgresql
export PGDATA=$PGHOME/data
export PATH=$PATH:$HOME/bin:$PGHOME/bin
执行source .profile
7 初始化数据库
su - postgres
initdb
8 修改数据库配置
su postgres
cd /data/pgsql/postgresql/data
vi postgresql.conf
vi pg_hba.conf
添加如下一行,可以在文件尾部。
9 启动数据库
pg_ctl -D /data/pgsql/postgresql/data -l logfile start
10 添加自启动
10.1 准备 服务文件 postgresql.service ,
[Unit]
Description=postgressql Compatibility
ConditionFileIsExecutable=postgressql
After=network.target
[Service]
Type=forking
ExecStart=/opt/pg/start.sh
ExecStop=/opt/pg/stop.sh
ExecReload=/opt/pg/restart.sh
TimeoutSec=0
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
10.2 拷贝到 /usr/lib/systemd/system/ 目录下
/opt/pg/restart.sh 文件内容如下
#!/bin/bash
su - postgres -c "pg_ctl -D /data/pgsql/postgresql/data -l logfile stop"
su - postgres -c "pg_ctl -D /data/pgsql/postgresql/data -l logfile start"
/opt/pg/start.sh 文件内容如下
#!/bin/bash
su - postgres -c "pg_ctl -D /data/pgsql/postgresql/data -l logfile start"
/opt/pg/stop.sh 文件内容如下
#!/bin/bash
su - postgres -c "pg_ctl -D /data/pgsql/postgresql/data -l logfile stop"
重新加载服务
systemctl daemon-reload
加入自启动
systemctl enable postgressql.service
其他
导入备份数据
su - postgres
psql -U postgres database < ccc.sql
psql 进入数据库