如何在华为鲲鹏云服务器上安装PostgreSQL
最近,公司想将自研的一套企业安全双重预防管理软件迁移到华为鲲鹏云服务器上来,并逐步加入华为鲲鹏生态圈体系中。因此,为了评估和自测系统的兼容性,就租赁了一台华为鲲鹏云服务器,它是基于Centos7.6,内置了openJDK1.8。
通过这两天的华为云迁移过程来说,总体还是非常满意的,购买华为云只需要按照自身的需求,选择配置,然后按照向导直至支付完成即可,支付的化也很方便,直接用支付宝即可完成支付。支付完成后,即可在控制台的弹性云服务器ECS中查看到服务器信息,这里有IP的信息,可以根据公网的IP进行远程管理。
由于我们自研的孔智安全双重预防管理软件采用Java语言开发,因此软件本身的发布包迁移没有什么成本,借助华为CloudShell工具,可以非常方便的远程通过浏览器连接华为云服务器,并进行基本的操作。具体如下图所示:
成功登录后,就可以在命令行中输入相关命令,如创建文件夹,切换目录等。这里首先在root目录下创建kzcloud目录,即可看到如下界面:
孔智安全双重预防管理软件采用Spring Boot框架,可以基于Tomcat进行部署,下面简单介绍一下Tomcat的安装过程:
首先通过SSH工具,如Bitvise SSH连接华为云服务器,并将下载的apache-tomcat-9.0.45.tar.gz安装包上传到kzcloud目录,然后解压即可:
[root@ecs-de6f kzcloud]# tar -zxvf apache-tomcat-9.0.45.tar.gz
[root@ecs-de6f kzcloud]# mv apache-tomcat-9.0.45 tomcat9
[root@ecs-de6f bin]# ./startup.sh
然后查看一下8080端口是否已被监听
[root@ecs-de6f bin]# netstat -anput|grep 8080
此时,可能由于华为云服务器的端口还未开放,需要进行设置,设置过程也非常的方便,华为云服务器控制台内置了WebServer规则,可以根据需要选择配置即可,如开通8080和5432端口:
此时打开浏览器,输入华为云服务器公网地址:如http://IP:8080,会查看如下界面,说明Tomcat部署成功:
下一步就需要安装PostgreSQL数据库了,这里遇到了一点坑,主要是Yum源的问题,默认的安装过程中找不到源。还有就是基于鲲鹏ARM架构,需要安装PostgreSQL 对应的 aarch64版本。后来发现,华为云已经提供了官方镜像地址:https://mirrors.huaweicloud.com/ 具体如下图所示:
这里选择华为(CentOS7.6)yum源地鲲鹏的镜像,鲲鹏址:https://repo.huaweicloud.com/kunpeng/yum/el/7/aarch64
并安装官网提示进行如下配置:
1、备份原yum库文件:
mv /etc/yum.repos.d/ /etc/yum.repos.d-bak
2、将新配置写入repo文件:
mkdir /etc/yum.repos.d
echo -e "[kunpeng]\nname=CentOS-kunpeng - Base - repo.huaweicloud.com\nbaseurl=https://repo.huaweicloud.com/kunpeng/yum/el/7/aarch64/\ngpgcheck=0\nenabled=1" > /etc/yum.repos.d/CentOS-Base-kunpeng.repo
3、更新yum源配置:
yum clean all # 清除系统所有的yum缓存
yum makecache # 生成yum缓存
安装PostgresSQL 11.3
[root@ecs-de6f pgsql]# sudo yum install -y https://repo.huaweicloud.com/kunpeng/yum/el/7/aarch64/Packages/database/postgresql-11.3-1.lse.el7.aarch64.rpm
#创建文件夹
[root@ecs-de6f ~] mkdir -p /data/pgsql/data
[root@ecs-de6f ~] mkdir -p /data/pgsql/log
#权限设置
[root@ecs-de6f ~]# chown -R postgres.postgres /data/pgsql /usr/local/pgsql/
[root@ecs-de6f ~]# su - postgres
#### 修改环境变量
vi ~/.bash_profile
# 增如下内容
export PG_HOME=/usr/local/pgsql
export PGDATA=/data/pgsql/data
export PATH=${PG_HOME}/bin:$PATH
export PGPORT=5432
export PGUSER=postgres
export PGDATABASE=postgres
# 重载环境变量
source ~/.bash_profile
#用默认地址初始化
${PG_HOME}/bin/initdb -D ${PGDATA} -E utf8
#设置监听
vi ${PGDATA}/postgresql.conf
# 设置监听所有IP(生产环境慎用)
listen_addresses = '*'
port = 5432
#设置数据库白名单
vi ${PGDATA}/pg_hba.conf
# 增加如下记录,用户密码模式(生产环境慎用)
host all all 0.0.0.0/0 md5
#启动
${PG_HOME}/bin/pg_ctl start
# 停止
${PG_HOME}/bin/pg_ctl stop
进入pgsql环境:
[postgres@ecs-de6f bin]$ psql -U postgres -d postgres
可以设置初始密码,创建数据库和授权等。
postgres=# alter user postgres with password 'yourpassword';
ALTER ROLE
postgres=# select oid,datname from pg_database;
postgres=# create database dcs_kzcloud owner postgres;
CREATE DATABASE
postgres=# grant all on database dcs_kzcloud to postgres;
GRANT
关于数据库结构和数据的同步,可以用命令,也可以用Navicat Premium 工具,首先同步结构,再同步数据:
最后,将Web安装包上传到华为云,并解压,然后修改tomcat配置文件server.xml和Web程序的数据库链接等信息,重启tomcat即可。
通过自测,所有的业务模块都可以在华为云鲲鹏云服务器上正常运行。
- 点赞
- 收藏
- 关注作者
评论(0)