【简介】
PostgreSQL是一种对象-关系型数据库管理系统,是完全的事务安全性数据库,完整地支持外键、联合、视图、触发器和存储过程(并支持多种语言开发存储过程)。它支持了大多数的SQL:2008标准的数据类型,也支持存储二进制的大对象,如图片、声音和视频,它对很多高级开发语言都有原生的编程接口及各种文档,本教程将带着大家在 Microsoft Azure云端轻松构建部署PostgreSQL数据库。
【操作步骤】
一.创建Virtual Machines
1.1创建资源组
①Azure 资源组是在其中部署和管理 Azure 资源的逻辑容器。 必须在创建虚拟机前创建资源组,通过如下命令执行创建名为myResourceGroupVM的资源组
az group create --name myResourceGroupVM --location eastus
②执行结果如下图所示:
1.2 创建Linux虚拟机
①使用 az vm create 命令创建虚拟机,在创建虚拟机时,可使用多个选项来调配适合自己业务场景的虚拟机配置,具体执行命令如下
az vm create \
--resource-group myResourceGroupVM \
--name myVM \
--image UbuntuLTS \
--admin-username azureuser \
--generate-ssh-keys
注:执行命令完毕以后CLI命令行会发送命令到Auzre后台进行调用VM的虚拟资源池,在调用创建的过程可能需要几分钟的时间,当创建完毕以后,Azure CLI会回显输出如下已创建的信息
{
"fqdns": "",
"id": "/subscriptions/7fe09b4b-02fc-47c2-9d25-905e0da35c1a/resourceGroups/myResourceGroupVM/providers/Microsoft.Compute/virtualMachines/myVM",
"location": "eastus",
"macAddress": "00-22-48-26-9E-05",
"powerState": "VM running",
"privateIpAddress": "10.0.0.4",
"publicIpAddress": "20.102.64.112",
"resourceGroup": "myResourceGroupVM",
"zones": ""
}
②回显VM信息如下图所示:
③我们访问Azure门户找到VM虚拟机管理页面,点击名称进去查看详情
④在此界面中就可以看到我们利用Azure CLI 命令创建出的VM虚拟机器
二.远程连接Azure Virtual Machines
2.1 利用Azure Cloud Shell 连接VM
① 我们通过控制台或者Azure Cloud Shell返回的信息获取到了远程公网IP地址
ssh azure@20.121.17.46
ssh user@PublicIPaddress
三.安装PostgreSQL数据库依赖
3.1 安装PostgreSQL依赖库
① PostgreSQL数据库的安装需要预先安装一系列与之相关的软件到系统中,执行如下命令进行安装依赖
yum -y install readline-devel zlib-devel gcc gcc-c++ zlib readline
② 执行成功,如下图所示
3.2 下载解压PostgreSQL安装包
①执行如下命令下载PostgreSQL安装包
wget https://cs110032000fedad500.blob.core.windows.net/demo/postgresql-10.3.tar.gz
②执行如下命令进行解压压缩文件
tar -zxvf postgresql-10.3.tar.gz -C /opt/
③执行成功,如下图所示
④执行如下命令进入到解压的目录
cd /opt/postgresql-*/
⑤执行成功,如下所示
⑥执行如下命令配置编译安装环境
./configure --build=arm-linux --host=arm-linux --prefix=/usr/local/pgsql
⑦执行成功,如下所示
⑧执行如下命令开始编译安装
make && make install && make clean
⑨等待大约5分钟执行成功,如下图所示,至此PostgreSQL数据库安装完毕
四.配置运行环境
4.1 授权用户
①执行如下命令添加Postgres数据库用户和用户组adduser postgres
②执行如下命令将安装目录下的数据库授权给Postgres用户
chown -R postgres:postgres /usr/local/pgsql
③执行如下指令进行查看
ls -ld /usr/local/pgsql
④执行成功,如下所示
4.2 配置环境变量
①执行如下命令切换到postgres用户 (以后的指令都是在postgres用户下执行)su postgres
②执行完毕,如下所示
③编辑.bash_profile 文件
vim ~/.bash_profile
④按键盘的"a" ,“i”, "o"任意键进入编辑模式,在文档最后输入下代码,进行配置变量
export PGHOME=/usr/local/pgsql export PGDATA=/usr/local/pgsql/data export PATH=$PATH:$PGHOME/bin
⑤按键盘上“Esc”键退出编辑模式,输入保存并退出当前编辑文件指令“:wq”,如图所示:
4.3检验配置结果
①执行如下命令使其环境变量生效(生效以后可直接使用psql 命令,不用再输入其相关全路径)
source ~/.bash_profile
②使用命令测试环境变量是否配置成功post -V
③配置成功以后,会显示出PostgreSQL的数据库版本,如下图所示
五.运行数据库服务
5.1 初始化数据库
①设置环境变量完成后,直接执行“initdb”即可完成pg数据库初始化,自动生成对应的相关目录文件initdb
②执行成功,如下所示
5.2 启动数据库服务
①输入如下命令创建数据库日志文件路径mkdir -p /usr/local/pgsql/log
②修改日志路径访问权限,赋予/usr/local/pgsql/log 目录拥有者有可读可写可执行权限chmod 755 /usr/local/pgsql/log
③启动数据库,指令如下:pg_ctl -D $PGDATA -l $PGHOME/log/pg_server.log start
5.3 检查启动结果
①使用如下命令检查postgres的进程ps -ef |grep "postgres
六.修改数据库配置
修改Postgresql 数据库为可远程访问,用以提供数据存储服务
6.1 设置数据库密码
①执行下述命令,登陆到数据库
psql
②设置postgres数据库密码(此处要自行设置数据库密码哦)
\password postgres
③执行成功, 如下所示
④退出当前数据库
\q
6.2 修改PostgreSQL数据库为可远程访问
①修改postgreSQL数据库配置文件,配置PostgreSQL数据库可远程访问
vim /usr/local/pgsql/data/postgresql.conf
②找到下列配置选项,在#listen_addresses = ‘localhost’ 处进行修改
③将配置修改成如下所示
④修改完毕以后,按:wq进行保存
6.3 修改访问地址控制设置
①修改pg_hba.conf 配置文件
vim /usr/local/pgsql/data/pg_hba.conf
②找到85行,按键盘i进入编辑模式,在86行下面新增一行
host all all 0.0.0.0/0 md5
③在编辑框中按ECS键,并输入:wq进行保存
④保存成功,如下所示,已开启相关配置,这时候就可以远程操作连接PostgreSQL数据库啦~