Centos7安装SinoDB(Informix)

系统准备

关闭防火墙和Selinux
systemctl status firewalld 
systemctl stop firewalld 
systemctl disable firewalld

vi /etc/selinux/config
SELINUX=disabled

系统参数调整优化
vi /etc/sysctl.conf
fs.file-max = 1000000

sysctl -p

用户进程级别的限制修改
echo "
* soft nofile 65535
* hard nofile 70000
" >> /etc/security/limits.conf

> 设置&检查主机名
hostnamectl set-hostname sinodb
hostnamectl status

> 配置hosts
vi /etc/hosts
192.168.1.38 sinodb

说明:这里我刚开始并没有设置hostname,后来因为无法远程连接端口(nc 192.168.1.38 33721) ,后来排查和定位的过程中设置了hostname,但同时也做了其他的修改,这里不太确定SinoDB是否必须设置hostname,没有进一步尝试和研究。

SinoDB底层实际是Informix。
SinoDB 数据库需要一个名字为 informix 的操作系统用户, 做为数据库的超级用户。 我们在安装前, 需要创建好这个用户。

groupadd informix
useradd -g informix -d /home/informix -s /bin/bash -m informix
passwd informix
1q2w3e

以root用户安装(如果用 informix 用户安装,后面会提示有些功能不支持非root用户安装)
mkdir -p /opt/soft
cp /opt/SinoDB.12.10.FC8TL.linux-x86_64-GIT-4bcde202b.tar  /opt/soft
cd $_
tar -xvf SinoDB.12.10.FC8TL.linux-x86_64-GIT-4bcde202b.tar
ls
bundle.properties  CSDK  ICONNECT  ids_install  JDBC  README.html  SERVER  SinoDB.12.10.FC8TL.linux-x86_64-GIT-4bcde202b.tar

执行安装命令
./ids_install

安装过程中出现命令行交互配置界面:
Enter         #确认安装
Enter         #License确认
Y             #临时License确认
/opt/sinodb   #指定数据库的安装位置
Y             #确认安装目录指定是否正确
1             #典型安装
Enter         #hostname使用默认值: localhost.localdomain
1526          #端口使用默认值:sinodb默认端口是8080,我修改成 1526
yes           #是否启用OAT的管理密码、默认启用。如果不启用密码保护,则输入no。如果默认或输入yes,则会提示输入OAT用户名和密码。输入no和输入yes我都试过一次。
Enter         #如果前面输入yes,使用默认OAT用户名admin,如果要指定用户名也可以输入指定的
1q2w3e        #如果启用OAT的管理密码,会提示输入OAT用户的密码
1q2w3e        #如果启用OAT的管理密码,会提示再次输入确认密码
Enter         #其他许可信息
Y             #其他许可信息确认
1             #安装过程中自动创建数据库实例选择1,如果输入2则不创建数据库实例
Enter         #选择数据库预期的用户数量,快速安装默认1~100,则直接回车或者输入1
Enter         #安装信息汇总确认,确认无误后,直接回车开始安装
Enter         #安装前再次提示确认安装路径是否正确、是否开始安装,确认继续,开始安装,大约需要1~2分钟
Enter         #提示直接进行实例初始化(Server Initialization),回车继续,初始化数据库实例,大约1分钟,初始化实例完成后,提示信息如下:
===============================================================================
Using the new instance
----------------------

A database server instance was created. If you chose to initialize the 
instance, it is ready to use.

You can open a command prompt to an initialized instance by running one of the
following commands at /opt/sinodb, where ol_sinodb1210 is the path or filename
of the instance.

Windows:
ol_sinodb1210.cmd

UNIX csh:
source ol_sinodb1210.csh

UNIX ksh or bourne:
./ol_sinodb1210.ksh

If initialization fails, check the online.log file for messages. The 
instance's root chunk must be owned by the correct user and group, and it must
have readable and writable (rw) permission bits set only for owner and group.

PRESS <ENTER> TO CONTINUE

提示数据库实例已经创建完毕,提示不同系统实例的环境变量文件位置。按照提示,以root身份打开一个新的终端命令行,执行命令加载环境变量:
cd /opt/sinodb
./ol_sinodb1210.ksh

Enter        #输入回车,进入下一步,会提示安装成功的信息
Enter        #确认安装完毕、退出安装

检查环境变量是否生效:

# echo $INFORMIXDIR

如果没有生效,则手动配置环境变量:
cat /opt/sinodb/ol_sinodb1210.ksh

INFORMIXDIR=/opt/sinodb
 INFORMIXSERVER=ol_sinodb1210
 ONCONFIG=onconfig.ol_sinodb1210
 INFORMIXSQLHOSTS=/opt/sinodb/etc/sqlhosts.ol_sinodb1210
 GL_USEGLU=1
 PATH=${INFORMIXDIR}/bin:${INFORMIXDIR}/extend/krakatoa/jre/bin:${PATH}
export INFORMIXDIR INFORMIXSERVER ONCONFIG INFORMIXSQLHOSTS GL_USEGLU PATH

给root用户和informix用户添加环境变量:

vi /root/.bash_profile

末尾追加环境变量配置:

INFORMIXDIR=/opt/sinodb
 INFORMIXSERVER=ol_sinodb1210
 ONCONFIG=onconfig.ol_sinodb1210
 INFORMIXSQLHOSTS=/opt/sinodb/etc/sqlhosts.ol_sinodb1210
 GL_USEGLU=1
 PATH=${INFORMIXDIR}/bin:${INFORMIXDIR}/extend/krakatoa/jre/bin:${PATH}
export INFORMIXDIR INFORMIXSERVER ONCONFIG INFORMIXSQLHOSTS GL_USEGLU PATH

source /root/.bash_profile
echo $INFORMIXDIR

su - informix
vi .bash_profile
末尾添加相同的配置内容
source .bash_profile
echo $INFORMIXDIR

注意环境变量中的关键信息:
默认初始化实例的数据库服务名:ol_sinodb1210
数据库实例(服务)的配置文件:onconfig.ol_sinodb1210
HOSTS配置文件:/opt/sinodb/etc/sqlhosts.ol_sinodb1210

cat /opt/sinodb/etc/onconfig.ol_sinodb1210  #可以不用修改
cat /opt/sinodb/etc/sqlhosts.ol_sinodb1210  #需要根据实际情况修改

查看实例的状态, 如果是 online 说明服务状态正常
onstat -
[root@localhost soft]# onstat -
Your evaluation license will expire on 2022-12-18 00:00:00

Sinoregal SinoDB Dynamic Server Version 12.10.FC8TL -- On-Line -- Up 00:15:04 -- 254088 Kbytes

查看服务监听端口
cat /opt/sinodb/etc/sqlhosts.ol_sinodb1210
[root@localhost etc]# cat /opt/sinodb/etc/sqlhosts.ol_sinodb1210
ol_sinodb1210 onsoctcp localhost.localdomain ol_sinodb1210 
dr_sinodb1210 drsoctcp localhost.localdomain dr_sinodb1210 
lo_sinodb1210 onsoctcp 127.0.0.1 lo_sinodb1210

查看服务 ol_sinodb1210 对应的监听端口
vi /etc/services
最后几行:
lo_sinodb1210           14782/tcp
ol_sinodb1210_json      27017/tcp                  #JSON listener for ol_sinodb1210
ol_sinodb1210           33721/tcp                      #该端口为远程连接数据库访问端口
dr_sinodb1210           26709/tcp
lo_sinodb1210_1          7366/tcp
ol_sinodb1210_json_1     7067/tcp                 #JSON listener for ol_sinodb1210

[root@sinodb ~]# ps aux |grep informix
informix  1712  0.0  0.0 113280  1196 ?        S<   00:59   0:00 /bin/sh -c /opt/sinodb/extend/krakatoa/jre/bin/java -Dcom.ibm.tools.attach.enable=no -jar /opt/sinodb/bin/jsonListener.jar  -config /opt/sinodb/etc/jsonListener.properties -logfile /opt/sinodb/ol_sinodb1210_jsonListener.log -start   > /dev/null 2>&1
informix  1713  0.0  0.6 2543456 36908 ?       S<l  00:59   0:08 /opt/sinodb/extend/krakatoa/jre/bin/java -Dcom.ibm.tools.attach.enable=no -jar /opt/sinodb/bin/jsonListener.jar -config /opt/sinodb/etc/jsonListener.properties -logfile /opt/sinodb/ol_sinodb1210_jsonListener.log -start
informix  1874  0.0  3.6 430964 215584 ?       S<   01:21   0:03 oninit
informix  1912  0.0  0.4 430452 24476 ?        S<   01:22   0:03 oninit
root      2507  0.0  0.0 112808   968 pts/0    S+   08:55   0:00 grep --color=auto informix
[root@sinodb ~]#

最初我的监听端口33721无法远程访问(nc 远程无法访问33721,提示连接拒绝,本机通过 127.0.0.1可以访问),显示的监听状态如下:
[root@localhost sinodb]# netstat -an |grep 33721
tcp6       0      0 ::1:33721               :::*                    LISTEN     
[root@localhost sinodb]#

后来修改配置文件中正确以后,正确的监听状态如下:

[root@sinodb ~]# netstat -an |grep 33721
tcp        0      0 192.168.1.38:33721    0.0.0.0:*               LISTEN

其中7067,7366端口为本地(内部)JSON listener监听端口:
[root@localhost sinodb]# cat /opt/sinodb/etc/jsonListener.properties
listener.port=7067
url=jdbc:informix-sqli://localhost:7366/sysmaster:INFORMIXSERVER=lo_sinodb1210;USER=ifxjson;PASSWORD=eWLaI(AzWoF
[root@localhost sinodb]#

关于 informix 默认允许访问的用户,Informix数据库支持两种用户访问方式,数据库内部用户和操作系统用户。数据库内部用户是指使用create user命令创建的用户,通过映射配置,新建用户可以映射至操作系统用户。这种方法使系统可以通过映射系统中已存在的除 Informix 和 root 外的其他用户,来访问数据库。这种机制将会减少为了使用数据库而创建的大量系统用户。

查看数据库状态:

onstat -i
[root@sinodb ~]# onstat -i
Your evaluation license will expire on 2022-12-18 00:00:00

Sinoregal SinoDB Dynamic Server Version 12.10.FC8TL -- On-Line -- Up 07:39:04 -- 254088 Kbytes

进入数据库,不指定数据库登录:
dbaccess - -

-- 创建数据库并测试
create database testdb;
create table test (id int not null, name varchar(255), primary key (id));
insert into test values(1,'test');
select * from test;

将 testdb 数据库授权给用户(切换到 testdb 数据库、再执行授权命令)
database testdb;
grant dba to informix;

用 informix 用户连接数据库:
CONNECT TO 'testdb@lo_sinodb1210' USER 'informix';
testdb为数据库、lo_sinodb1210为数据库服务名,输入informix系统用户的密码即可
select * from test;

用 informix 用户连接数据库:
CONNECT TO 'sysmaster@lo_sinodb1210' USER 'informix';
sysmaster为数据库(安装后默认就有了)、lo_sinodb1210为服务名,输入informix系统用户的密码即可

DBeaver远程连接数据库:
JDBC-URL for testdb:
jdbc:informix-sqli://192.168.1.38:33721/testdb:INFORMIXSERVER=lo_sinodb1210
连接用户密码:informix/1q2w3e

JDBC-URL for sysmaster:
jdbc:informix-sqli://192.168.1.38:33721/sysmaster:INFORMIXSERVER=lo_sinodb1210
连接用户密码:informix/1q2w3e

数据库关闭
su - informix
onmode –ky

数据库启动
oninit -v
或者
onmode – vy

查看数据库状态
onstat -i

远程无法访问(无法通过 192.168.1.38 或者hostname sinodb 访问) 33721 端口

onmode -ky

修改配置 sqlhosts.ol_sinodb1210
vi /opt/sinodb/etc/sqlhosts.ol_sinodb1210

修改第一行:
ol_sinodb1210 onsoctcp localhost.localdomain ol_sinodb1210
的 localhost.localdomain 修改为 sinodb

修改后如下:

[root@sinodb etc]# cat sqlhosts.ol_sinodb1210
ol_sinodb1210 onsoctcp sinodb ol_sinodb1210
dr_sinodb1210 drsoctcp localhost.localdomain dr_sinodb1210 
lo_sinodb1210 onsoctcp 127.0.0.1 lo_sinodb1210_1 
[root@sinodb etc]#

启动数据库:
oninit -v

[root@sinodb etc]# netstat -an |grep 33721
tcp        0      0 192.168.1.38:33721    0.0.0.0:*               LISTEN

nc 192.168.1.38 33721 
端口能通以后,就可以通过IP地址可以远程访问了,再通过DBeaver客户端工具也就可以远程访问了:

连接默认的sysmaster数据库:
主机:192.168.1.38
端口:33721
服务器:lo_sinodb1210
数据库/模式:sysmaster
用户名:informix
密码:1q2w3e

连接testdb数据库:
主机:192.168.1.38
端口:33721
服务器:lo_sinodb1210
数据库/模式:testdb
用户名:informix
密码:1q2w3e

注意:如果sqlhosts.ol_sinodb1210配置不对的话,只会存在:
[root@localhost ~]# netstat -an |grep 33721
tcp6       0      0 ::1:33721               :::*                    LISTEN
无法远程访问端口。

配置正确以后:
[root@sinodb etc]# netstat -an |grep 33721
tcp        0      0 192.168.1.38:33721    0.0.0.0:*               LISTEN

informix常用命令:参考 
informix常用命令:_sunny05296的博客-CSDN博客

Centos7安装SinoDB(Informix)相关推荐

  1. centos7 nginx配置php7,centos7安装并配置nginx+php,centos7nginx

    centos7安装并配置nginx+php,centos7nginx centos7安装并配置nginx+php 安装nginx yum install nginx 设置nginx开启起动 syste ...

  2. centos7安装配置pgAgent

    centos7安装pgagent: 默认cmake已经安装 编译wxGTK https://excellmedia.dl.sourceforge.net/project/wxwindows/2.8.7 ...

  3. centos7 安装mysql php_Centos7安装mysql与php的方法

    本文主要和大家分享Centos7安装mysql与php的方法,希望能帮助到大家. 相关mysql视频教程推荐:<mysql教程> 官网下载安装mysql-server 依次使用下面三个命令 ...

  4. Centos7安装Apache和PHP,包含配置过程

    本文主要讲的是本人在迁移php网站相关软件的安装和配置过程,以及一下问题的解决步骤.通过阅读本文能够知道如何迁移php网站,如何配置httpd服务使得它能够解析php文件以及如何解决迁移过程中的异常问 ...

  5. LINUX CentOS7安装字体库

    LINUX CentOS7安装字体库 2017年12月26日 17:06:07 q260996583 阅读数:4866更多 个人分类: linux JAVA画图时常用到Font 类对象 这样的对象依赖 ...

  6. centos7安装mysql缺失依赖_CentOS7安装mysql5.7不成功,解决依赖包之后还是无法安装成功...

    [root@xg79 ~]# yum -y installmysql-community-server ............. Error: Package:mysql-community-ser ...

  7. linux tomcat7怎么安装,centos7安装Tomcat7,

    centos7安装Tomcat7, 一.环境 centos7 linux apache-tomcat-7.0.92.tar.gz:链接:https://pan.baidu.com/s/1-clhIjD ...

  8. CentOS7安装CDH 第三章:CDH中的问题和解决方法

    CentOS7安装CDH 第三章:CDH中的问题和解决方法 参考文章: (1)CentOS7安装CDH 第三章:CDH中的问题和解决方法 (2)https://www.cnblogs.com/yang ...

  9. centos7 安装 xfce桌面

    最小化centos7安装后 1.先安装桌面协议,执行命令yum groupinstall -y "X Window system" 2.执行yum install -y epel- ...

最新文章

  1. commons.apache
  2. OC2_点语法(属性关键字)
  3. 【翻译】eXpressAppFramework QuickStart 业务模型设计(十)——在代码中实现数据验证...
  4. Win7下OpenCV3.2.0+VS2015配置
  5. 残疾人软件开发_残疾人应该使用Linux的6个理由
  6. java微信第三方支付
  7. 随想录(编写简单资源管理代码)
  8. Intouch2014无法自动启动西门子驱动DASSIDIRECT.EXE的原因及解决办法
  9. 【学习】无刷直流电机的基本结构及工作原理
  10. 产品读书《谷歌和亚马逊如何做产品》
  11. iOS 解决:调用系统相册、相机是英文状态。
  12. “秒抢红包”锁屏勒索病毒样本分析
  13. 入侵防御系统特征库升级
  14. 交友结婚的原则[转贴]
  15. oracle付款汇兑损益怎么产生,月末汇兑损益怎么算调整分录如何做
  16. mongoDB镜像下载
  17. 代码随想录训练营day7
  18. 趁舍友上个厕所的时间,掌握步进电机驱动方式和电路
  19. PMSM的有感FOC闭环控制讲解
  20. 思想萌芽——从哲学中诞生的机械计算思维

热门文章

  1. android连接wifi后移动数据,手机连接WiFi的时候,数据网络开着会耗费流量吗
  2. 脱坑:Kettle+postgres:Caused by: org.postgresql.util.PSQLException: ERROR: column “xxx“ does not exist
  3. asp毕业设计—— 基于asp+access的网上考试系统设计与实现(毕业论文+程序源码)——网上考试系统
  4. 【评价模型】对相关系数矩阵做因子分析
  5. STM32编程常踩的地雷
  6. ps---万能调色方法和ps-----去掉扫描的文字灰蒙蒙感觉 -------色阶讲解
  7. 通用目标检测开源框架YOLOv6在美团的量化部署实战
  8. 综述二 | 2020年最全的目标检测大综述(附下载链接)
  9. 非标自动化转行机器人_一个4年非标自动化行业成长感触与同行分享
  10. FusionSphere虚拟化套件简介