KingbaseES V8+ Postgis的部署方案
环境信息
- (Windows) IP: 192.168.0.62 用户名:root 密码:kingbase
- V8R3(linux) IP: 192.168.0.6 用户名:root 密码:kingbase
- 数据库安装用户kingbase,
- 数据库安装目录:/home/kingbase/V8R3+GIS/Server/
- 数据库实例:/home/kingbase/V8R3+GIS/data1/
- 数据库用户名:system 密码:123456
数据库的配置 - 数据库安装。
a. 看到安装包
b. 通过命令:
tar -zxvf KingbaseES_V008R003M002B0015_Lin64_install.tar.gz解压安装包,得到文件
c. 打开该文件并查看目录
d. 安装
弹出界面:选择Next
勾选,选择Next:
选择包中的license文件,文件名为license_1237_0.dat:
选择安装地址:
选择GBK:
勾选,选择Next:
e. 完成安装,退出
-
数据库部署安装postgis扩展。(注:postgis拓展为2.5.2版本)
a. 解压文件夹内的postgis-2.5.2-plugin-x86_64.zip
b. 将解压出来的postgis文件夹下的Lib/下的所有动态库拷贝到V8安装目录的lib
c. 将解压出来的Postgis文件夹下的share下的exntension拷贝到V8安装目录的share/extension下
d. 将解压出来的postgis文件夹下的contrib目录拷贝至V8安装目录share目录下。 -
配置:
关闭所有的oracle兼容开关,设置kingbase.conf文件中的以下参数:
ora_plsql_style = off
ora_func_style = off
ora_input_emptystr_isnull = off
char_default_type = ‘char’
修改sys_hba.conf文件:
设置连接到数据库的认证方式,通常改为trust即可连接。 -
在要连接的数据库中创建postgis拓展及如下视图:
create extension postgis;
create view pg_database as select * from sys_database;
create view pg_views as select * from sys_views;
create view pg_indexes as select * from sys_indexes;
create view pg_class as select * from sys_class;
create view pg_tables as select * from sys_tables;
create view pg_namespace as select oid,NSPNAME, NSPOWNER, NSPPARENT, NSPACL from sys_namespace;
alter language plsql rename to plpgsql;
- 系统关闭防火墙
数据库的备份与恢复
1. 数据库的备份
a. 以使用test数据为例。使用以下命令进行数据库的备份
./bin/sys_dump -Fp test > test.sql -Usystem -p54666 --use-set-session-authorization
其中: Fp 是指定使用SQL方式备份
test是使用的数据库
test.sql 是备份SQL生成的文件名
Usystem 是连接数据库的用户名
p54666 是数据库的端口
use-set-session-authorization 是备份用户的权限信息
2. 数据库的恢复
a. 首先创建新的数据库,使用ksql 登录数据后使用如下语句,创建新数据库:
create database stest;
b. 对新建数据库stest进行初始化,使用如下语句:
create extension postgis;
create view pg_database as select * from sys_database;
create view pg_views as select * from sys_views;
create view pg_indexes as select * from sys_indexes;
create view pg_class as select * from sys_class;
create view pg_tables as select * from sys_tables;
create view pg_namespace as select oid,NSPNAME, NSPOWNER, NSPPARENT, NSPACL from sys_namespace;
alter language plsql rename to plpgsql;
c. 对备份出来的test.sql文件进行预处理,需要将SQL文件中的CREATE OR REPLACE INTERNAL FUNCTION 替换为 CREATE OR REPLACE FUNCTION
以vim为例
Vim test.sql
:%s%INTERNAL FUNCTION%FUNCTION%gg
d. 使用ksql将test.sql恢复至stest数据库,使用如下命令:
./bin/ksql -Usystem -p54666 stest -f test.sql
至此,对于数据库的备份与恢复全部完成,可以使用进行连接实验。