在 Linux 上的 Oracle 数据库 中,“授权”通常包含 操作系统层授权 和 数据库层授权 两部分。下面按常见场景说明。
通常 Oracle 安装时会创建:
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/app/oracle
visudo
添加:
oracle ALL=(ALL) NOPASSWD:ALL
su - oracle
sqlplus / as sysdba
CREATE USER testuser IDENTIFIED BY testpass;
GRANT CONNECT, RESOURCE TO testuser;
GRANT DBA TO testuser;
GRANT SELECT, INSERT, UPDATE, DELETE
ON scott.emp
TO testuser;
GRANT SELECT ANY TABLE TO testuser;
sqlplus testuser/testpass
| 功能 | 命令 |
|---|---|
| 连接数据库 | GRANT CONNECT TO user; |
| 建表权限 | GRANT RESOURCE TO user; |
| 管理员 | GRANT DBA TO user; |
| 查询表 | GRANT SELECT ON table TO user; |
| 所有权限 | GRANT ALL PRIVILEGES TO user; |
SELECT * FROM user_sys_privs;
SELECT * FROM user_tab_privs;
如果你指的是 Linux 权限、Oracle 安装授权、RAC 授权或具体报错场景,可以告诉我具体情况,我可以给更针对性的方案。