linux更改oracle所属组,Linux更改oracle用户组实验

---通常我们安装oracle数据库是建立oracle用户。并且用户加入dba组

--但是我们要改了oracle的dba组为dba1 ,数据库使用操作系统认证还能

--正常登录吗?

--回答是不行的。需要重新编译下我们的oracle可执行文件

--下面是我的操作步骤。

1:查看oracle 用户的具体情况,主组为dba

[root@repositorydb gc-1024]# id oracle

uid=500(oracle) gid=501(oinstall) groups=501(oinstall),500(dba)

2:可以看到现在使用操作系统验证登录。是没问题的2:可以看到现在使用操作系统验证登录。是没问题的

[oracle@repositorydb ~]$ sqlplus "/as sysdba"

SQL*Plus: Release 10.2.0.4.0 - Production on 星期四 9月 27 15:28:39 2012

Copyright (c) 1982, 2007, Oracle. All Rights Reserved.

Connected to an idle instance.

SQL> exit

Disconnected

3:修改 oracle 配置文件为dba1.这里目地是让大家知道我讲改变成了dba1组3:修改 oracle 配置文件为dba1.这里目地是让大家知道我改变成了dba1组,这里根本不起作用。只是标识一下。我们看到了是注释

[oracle@repositorydb lib]$ vi $ORACLE_HOME/rdbms/lib/config.c

/* SS_DBA_GRP defines the UNIX group ID for sqldba adminstrative access. */

/* Refer to the Installation and User's Guide for further information. */

#define SS_DBA_GRP "dba1"

#define SS_OPER_GRP "dba"

4:编译oracle 可执行文件

oracle@repositorydb lib]$ make -f ins_rdbms.mk config.o

/usr/bin/gcc -O2 -I/u01/oracle/db_1/rdbms/demo -I/u01/oracle/db_1/rdbms/public -I/u01/oracle/db_1/plsql/public -I/u01/oracle/db_1/network/public -DLINUX -D_GNU_SOURCE -D_LARGEFILE64_SOURCE=1 -D_LARGEFILE_SOURCE=1 -DSLTS_ENABLE -DSLMXMX_ENABLE -D_REENTRANT -DNS_THREADS -c -o config.o config.c

[oracle@repositorydb lib]$ make -f ins_rdbms.mk ioracle

chmod 755 /u01/oracle/db_1/bin

- Linking Oracle

rm -f /u01/oracle/db_1/rdbms/lib/oracle

gcc -o /u01/oracle/db_1/rdbms/lib/oracle -L/u01/oracle/db_1/rdbms/lib/ -L/u01/oracle/db_1/lib/ -L/u01/oracle/db_1/lib/stubs/ -L/usr/lib -lirc -Wl,-E `test -f /u01/oracle/db_1/rdbms/lib/sskgpsmti.o && echo /u01/oracle/db_1/rdbms/lib/sskgpsmti.o` /u01/oracle/db_1/rdbms/lib/opimai.o /u01/oracle/db_1/rdbms/lib/ssoraed.o /u01/oracle/db_1/rdbms/lib/ttcsoi.o /u01/oracle/db_1/rdbms/lib/defopt.o -Wl,--whole-archive -lperfsrv10 -Wl,--no-whole-archive /u01/oracle/db_1/lib/nautab.o /u01/oracle/db_1/lib/naeet.o /u01/oracle/db_1/lib/naect.o /u01/oracle/db_1/lib/naedhs.o /u01/oracle/db_1/rdbms/lib/config.o -lserver10 -lodm10 -lnnet10 -lskgxp10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10 -lhasgen10 -lcore10 -lskgxn2 -locr10 -locrb10 -locrutl10 -lhasgen10 -lcore10 -lskgxn2 -lclient10 -lvsn10 -lcommon10 -lgeneric10 -lknlopt `if /usr/bin/ar tv /u01/oracle/db_1/rdbms/lib/libknlopt.a | grep xsyeolap.o > /dev/null 2>&1 ; then echo "-loraolap10" ; fi` -lslax10 -lpls10 -lplp10 -lserver10 -lclient10 -lvsn10 -lcommon10 -lgeneric10 `if [ -f /u01/oracle/db_1/lib/libavserver10.a ] ; then echo "-lavserver10" ; else echo "-lavstub10"; fi` `if [ -f /u01/oracle/db_1/lib/libavclient10.a ] ; then echo "-lavclient10" ; fi` -lknlopt -lslax10 -lpls10 -lplp10 -ljox10 -lserver10 -lclsra10 -ldbcfg10 -locijdbcst10 -lwwg `cat /u01/oracle/db_1/lib/ldflags` -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lnro10 `cat /u01/oracle/db_1/lib/ldflags` -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lmm -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10 `cat /u01/oracle/db_1/lib/ldflags` -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lnro10 `cat /u01/oracle/db_1/lib/ldflags` -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10 `if /usr/bin/ar tv /u01/oracle/db_1/rdbms/lib/libknlopt.a | grep "kxmnsd.o" > /dev/null 2>&1 ; then echo " " ; else echo "-lordsdo10"; fi` -lctxc10 -lctx10 -lzx10 -lgx10 -lctx10 -lzx10 -lgx10 -lordimt10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10 -lsnls10 -lunls10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10 -laio `cat /u01/oracle/db_1/lib/sysliblist` -Wl,-rpath,/u01/oracle/db_1/lib -lm `cat /u01/oracle/db_1/lib/sysliblist` -ldl -lm -L/u01/oracle/db_1/lib

/u01/oracle/db_1/lib//libcore10.a(lcd.o): In function `lcdprm':

lcd.c:(.text+0x8e8): warning: the `gets' function is dangerous and should not be used.

mv -f /u01/oracle/db_1/bin/oracle /u01/oracle/db_1/bin/oracleO

mv /u01/oracle/db_1/rdbms/lib/oracle /u01/oracle/db_1/bin/oracle

chmod 6751 /u01/oracle/db_1/bin/oracle

5:在登录,发现已经登录不5:在登录,发现已经登录不了了。

[oracle@repositorydb lib]$ sqlplus '/as sysdba'

SQL*Plus: Release 10.2.0.4.0 - Production on 星期四 9月 27 15:30:50 2012

Copyright (c) 1982, 2007, Oracle. All Rights Reserved.

ERROR:

ORA-01031: insufficient privileges

Enter user-name:

ERROR:

ORA-01017: invalid username/password; logon denied

Enter user-name:

ERROR:

ORA-01017: invalid username/password; logon denie

6:修改oracle 用户主组为dba1,正常登录

[root@repositorydb gc-1024]# usermod -G dba1 oracle

[root@repositorydb gc-1024]# id oracle

uid=500(oracle) gid=501(oinstall) groups=501(oinstall),502(dba1)

[root@repositorydb gc-1024]# su - oracle

[oracle@repositorydb ~]$

[oracle@repositorydb ~]$

[oracle@repositorydb ~]$

[oracle@repositorydb ~]$ sqlplus /nolog

SQL*Plus: Release 10.2.0.4.0 - Production on 星期四 9月 27 15:35:52 2012

Copyright (c) 1982, 2007, Oracle. All Rights Reserved.

SQL> conn /as sysdba

Connected to an idle instance.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值