oracle 建立新的数据库实例时间:2021-03-25 05:00:18在oracle安装完成后,默认会启动安装时建立的实例 如果我们需要创建新的实例,该如何操作呢?那么如何启动呢?如何进行访问呢? 下面就简单总结下: <o:p> </o:p> 1、 以oracle用户登录后,通过dbca命令启动图形化创建实例的界面 输入global name和sid,一路next,最后输入访问这个库的密码 2、 修改当前oracle用户的环境变量,修改oracle_sid为新创建实例的名字eastpay 然后source .bash_profile使其生效 3、 然后以sys用户登录sqlplus / as sysdba 4、 新建实例的用户,即给当前实例eastpay创建用户 Create user east identified by east 授权角色: Grant all privileges to east(这里简单的把所有权限都赋予了east) 5、 以dba身份登录sqlplus / as sysdba,然后启动当前实例 Startup (注意默认是启动当前的oracle_sid,而不是启动所有的实例) 6、 然后测试新建用户连接新建的实例 Sqlplus east/east@eastpay <o:p> </o:p> <o:p> </o:p> 这里区分几个概念: 1、 系统用户和实例用户 a) 系统的用户包括:sys,system,sysman,dbsnmp 系统用户在安装oracle数据库时就存在了,而且以后再新建的实例中也存在 所以系统用户的密码是有多个的,即:在oracle数据库中有一个,在每个实例中也可以有一个 b) 实例用户 在创建实例后,为了使得以后连接、导入导出数据的方便,给每个实例创建一个用户(也可多个),然后就可以使用实例用户。实例用户只存在于该实例下 <o:p> </o:p> 2、 启动实例和停止实例 启动实例即startup命令,只是启动当前oracle_sid所标识的实例名,而不是所有的实例,这里startup命令后也不需要带实例的名称 同样停止实例也是如此 <o:p> </o:p> 如何建立新的实例? 一个oracle 数据库服务器(database server) 有一个或多个实例(instance) 和一个数据库(database) 组成. 在unix下,一个instance有多个进程(如:dbw0..n ,lgwr,smon,pmon etc.)和一块内存区SGA (share pool,db buffer .et c.)区组成. ? 这个instance为(用户?server process)提供服务. 创建另外instance: windows :cmd 命令行 c:/>;set oracle_sid=NEW_SID sql>;connect internal; sql>;startup nomount pfile='....init.ora'; sql>; create database NEW_DB unix:sh $ ORACLE_SID=NEW_SID $ export ORACLE_SID sql>;connect internal; sql>;startup nomount pfile='....init.ora'; sql>;create database new_db unix:csh $ set ORACLE_SID=NEW_SID sql>;connect internal; sql>;startup nomount pfile='....init.ora'; sql>;create database new_db