温馨提示×

linux informix如何设置用户

小樊
37
2026-10-02 01:10:44
栏目: 智能运维

在 Linux 上配置 IBM Informix 用户和权限,通常涉及 操作系统用户、Informix 实例用户 和 数据库用户 三个层面。下面按常见场景说明。


一、Linux 系统用户(OS 用户)

Informix 通常以一个专用 OS 用户运行(如 informix)。

1. 创建 Informix 运行用户

groupadd informix
useradd -g informix -d /home/informix -m informix
passwd informix

2. 设置环境变量(informix 用户)

编辑 ~informix/.bash_profile:

export INFORMIXDIR=/opt/informix
export INFORMIXSERVER=ol_informix
export PATH=$INFORMIXDIR/bin:$PATH
export ONCONFIG=onconfig.ol_informix

二、Informix 实例用户(Instance Owner)

Informix 实例必须由 informix 用户启动:

su - informix
oninit -vy

⚠️ 普通业务用户 不能直接启动实例,只能连接数据库。


三、数据库用户(DB User)

Informix 有两种用户模式:

方式 1:使用 OS 用户作为数据库用户(默认)

只要 OS 用户存在,就可以连接:

useradd appuser
passwd appuser

连接示例:

dbaccess dbname -

或

isql dbname

方式 2:使用 Informix 内部用户(USERMAPPING)

适用于不想创建 OS 用户的情况。

1. 开启用户映射

onmode -wf USERMAPPING=ADMIN

2. 创建内部用户

CREATE USER appuser WITH PASSWORD 'pwd123';

3. 授权

GRANT CONNECT TO appuser;
GRANT RESOURCE TO appuser;

四、数据库权限管理

1. 创建数据库

CREATE DATABASE testdb WITH LOG;

2. 授权用户

GRANT CONNECT TO user1;
GRANT RESOURCE TO user1;
GRANT DBA TO user1;

3. 表权限

GRANT SELECT, INSERT ON tab1 TO user1;

五、常见问题

1. 用户连不上数据库

检查:

  • INFORMIXSERVER 是否正确
  • sqlhosts 配置
  • 用户是否在 onconfig 允许列表中

2. 权限不足

GRANT DBA TO user;

3. 查看当前用户

SELECT USER FROM systables WHERE tabid = 1;

如果你能提供:

  • Informix 版本
  • 是否使用 OS 用户 / 内部用户
  • 是开发环境还是生产环境

我可以给你更具体的配置示例。

0 踩