温馨提示×

ubuntu informix如何设置用户

小樊
43
2026-10-19 21:39:54
栏目: 智能运维

在 Ubuntu 上配置 IBM Informix 并设置用户,通常包含两部分:

  1. 操作系统用户(OS 用户)
  2. Informix 数据库用户(通过 OS 用户或角色管理)

下面按实战步骤说明。


一、准备工作(已安装 Informix 为前提)

假设:

  • Informix 安装目录:/opt/ibm/informix
  • Informix 服务用户:informix
  • 数据库名:testdb

二、创建操作系统用户

Informix 数据库用户本质上是 OS 用户(除非使用 USERMAPPING)。

1. 创建用户

sudo useradd -m -s /bin/bash ifxuser
sudo passwd ifxuser

2. 加入 informix 组(可选但推荐)

sudo usermod -aG informix ifxuser

查看:

id ifxuser

三、配置 Informix 使用 OS 用户登录

1. 设置环境变量(用户侧)

切换到该用户:

su - ifxuser

编辑 ~/.bashrc:

export INFORMIXDIR=/opt/ibm/informix
export INFORMIXSERVER=ol_informix
export PATH=$INFORMIXDIR/bin:$PATH
export DB_LOCALE=en_US.utf8
export CLIENT_LOCALE=en_US.utf8

使配置生效:

source ~/.bashrc

四、在 Informix 中授权用户

1. 使用 informix 用户连接数据库

su - informix
dbaccess testdb -

2. 创建角色(推荐方式)

CREATE ROLE dbuser_role;
GRANT CONNECT TO dbuser_role;
GRANT SELECT, INSERT, UPDATE ON customer TO dbuser_role;

3. 授权 OS 用户

GRANT dbuser_role TO ifxuser;

或直接授权:

GRANT CONNECT TO ifxuser;

五、用户连接测试

su - ifxuser
dbaccess testdb -

或:

isql -U ifxuser -P password -S ol_informix

六、使用 USERMAPPING(非 OS 用户,可选)

编辑 $INFORMIXDIR/etc/onconfig:

USERMAPPING BASIC

重启实例:

onmode -ky
oninit -v

创建映射用户:

CREATE USER ifxdbuser WITH PASSWORD 'pwd123';
GRANT CONNECT TO ifxdbuser;

七、常见问题

1. 用户连不上

  • 检查 /etc/hosts 和 sqlhosts
  • 检查 onstat -g cfg | grep USERMAPPING
  • 查看 online.log

2. 权限不足

GRANT DBA TO ifxuser;

八、总结

类型 说明
OS 用户 Informix 默认用户来源
数据库角色 推荐权限管理方式
USERMAPPING 可脱离 OS 用户

如果你能提供:

  • Informix 版本
  • 是否使用 oncmsm / HDR / docker
  • 想用 OS 用户还是纯数据库用户

我可以给你更精确的配置示例。

0 踩