温馨提示×

ubuntu下informix怎么授权

小樊
40
2026-10-08 05:40:28
栏目: 智能运维

在 Ubuntu(或任意 Linux)下,Informix 的“授权”通常指两类事情:

  1. 操作系统层面:给用户授权使用 Informix(用户/组、环境变量)
  2. 数据库层面:在 Informix 中给用户授予数据库、表、操作的权限

下面分别说明。


一、操作系统层面授权(Linux 用户)

1. 创建 Informix 用户和组(通常已存在)

groupadd informix
useradd -g informix informix

2. 设置环境变量(最重要)

在 ~informix/.bashrc 或 /etc/profile 中:

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

让普通用户能连 Informix:

  • 用户必须属于 informix 组
usermod -aG informix username

二、数据库层面授权(DBA 操作)

1. 用 DBA 用户连接

dbaccess

或

isql -U informix -P password -S ol_informix

2. 创建数据库用户(Informix 使用 OS 用户)

Informix 没有独立密码用户,直接用 Linux 用户:

GRANT CONNECT TO username;

3. 授权数据库权限

GRANT CONNECT TO username;
GRANT RESOURCE TO username;   -- 可建表
GRANT DBA TO username;        -- 管理员

4. 授权表/视图权限

GRANT SELECT ON table_name TO username;
GRANT INSERT, UPDATE, DELETE ON table_name TO username;
GRANT ALL ON table_name TO username;

5. 收回权限

REVOKE SELECT ON table_name FROM username;

三、常见场景示例

场景 1:让某用户只能查数据

GRANT CONNECT TO report_user;
GRANT SELECT ON orders TO report_user;

场景 2:让开发用户建表

GRANT CONNECT, RESOURCE TO dev_user;

场景 3:查看当前授权

SELECT * FROM systabauth WHERE grantee = 'username';

四、注意事项(Ubuntu 特有)

  • Ubuntu 下 SELinux 一般关闭,但要注意:
    • 文件权限:informix 用户对 $INFORMIXDIR 有写权限
  • 若使用 socket 连接,确保:
    /tmp/.infxdirs
    /tmp/ol_informix
    
    属主为 informix

五、如果你指的是“License 授权”

Informix 免费版(Developer/Express)不需要 license
商业版:

onlicense

或把 license 文件放入:

$INFORMIXDIR/etc/

如果你能具体说:

  • 是 用户连不上?
  • 还是 没权限操作表?
  • 还是 License 授权?

我可以直接给你对应命令。

0 踩