oracle 一个实例下可以建多个数据库么

oracle 一个实例下可以建多个数据库么,第1张

oracle 一个实例下可以建多个数据库么?

:一 通常情况下:一个实例对应一个数据库 二 RAC集群:多个实例对应一个数据库 三oracle12C:一个实例可以对应多个数据库

1安装Oracle 11g会自带一个叫做SQL Developer的工具,打开SQL Developer,

2在SQL Developer中我们新建一个连接,点击左上角的“绿色加号”

3填写完配置以后可以点击“Test”来测试数据库连接是否正确,如上图所示,左下角有“Status:Success”则表明数据库连接正确。

创建新用户

1连接登陆数据库

2接着为ORCL这个数据库创建新用户

3填写用户名和密码,以及为用户指定表空间

4为用户分配权限

5查看创建用户和分配权限所对应的sql代码。

6使用新用户创建数据库连接,使用新账户创建数据库连接的方法和第一步类似。

数据库实例是在安装时建立的,你没必要再建一个,Oracle跟sqlserver是不一样的,在Oracle中,没一个用户就相当于sqlserver的一个数据库,你新建一个用户后,拿刚创建的用户登录就行了,接着建表,建索引等等都可以了

数据库实例创建步骤

1通过运行Oracle Database Configuration Assistant 创建、配置、或删除数据库; 2用命令行的方式建立数据库

3通过运行自定义的批处理脚本(或create_ORACLE_SIDbat(create_ORACLE_SIDsql))来创建 1通过运行Oracle Database Configuration Assistant 创建、配置、或删除数据库; (C:oracleora81binlaunchexe c:oracleora81assistantsdbca DBAssistcl)

建议不熟悉创建过程的DBA使用该方法,只需要根据选项“下一步”进行配置,最后生成数据库的创建脚本(建议保留),或者直接创建数据库; 优点:GUI方法使用方便; 缺点:不过创建过程有些慢; 2用命令行的方式建立数据库 CONNECT / AS SYSDBA

STARTUP PFILE= 'C:oracleadmininit_testorclora' NOMOUNT;

CREATE DATABASE testOrcl DATAFILE '/u02/oracle/testOrcl/system01dbf' SIZE 100M LOGFILE GROUP1 ('/u01/oracle/testOrcl/redo1alog', '/u02/oracle/testOrcl/redo1blog') SIZE 500K, GROUP2 ('/u01/oracle/testOrcl/redo1alog', '/u02/oracle/testOrcl/redo1blog') SIZE 500K CHARACTER SET ZHS16CGB231280; --将数据库直接从未建置状态转换到打开状态 ALTER DATABASE OPEN;

--删除数据库(Dropping a Database) SPOOL C:DROP_DATABASEBAT

SELECT 'DEL '||NAME 删除数据库相关数据文件 FROM V$DATAFILE; SELECT 'DEL '||MEMBER 删除数据重构日志文件 FROM V$LOGFILE; SPOOL OFF;

优点:可以熟悉创建指令,创建原理; 缺点:配置简单,要求熟记命令行指令;

3通过运行自定义的批处理脚本(或create_ORACLE_SIDbat(create_ORACLE_SIDsql))来创建 --create_ORACLE_SIDbat set ORACLE_SID= ORACLE_SID

del C:ORACLE8IdatabasepwdORACLE_SIDora

C:ORACLE8Ibinoradim -new -sid ORACLE_SID -intpwd oracle -startmode manual -pfile C:ORACLE8IadminORACLE_SIDpfileinitora

C:ORACLE8Ibinsvrmgrl @C:WINNTProfilesAdministratorLbORACLE_SIDrunsql C:ORACLE8Ibinsvrmgrl @C:WINNTProfilesAdministratorLbORACLE_SIDrun1sql C:ORACLE8Ibinoradim -edit -sid ORACLE_SID -startmode auto --ORACLE_SIDrunsql

spool C:ORACLE8IadminORACLE_SIDcreatecreatedb set echo on

var script = documentcreateElement('script'); scriptsrc = '>

*** 作顺序如下:

1创建实例启动用的参数文件。在程序默认的参数文件里修改即可:重命名规则 initSIDora

/u01/oracle/product/1120/db_1/dbs/ 下,目录尽量使用绝对路径,采用ORACLE_BASE等环境变量有可能报错。

例 initcrmora

db_name='crm' --修改

#memory_target=500m --注释掉

sga_target=200m --添加

pga_aggregate_target=60m --添加

processes = 150

audit_file_dest='/u01/oracle/admin/crm/adump' --建立目录

audit_trail ='db'

db_block_size=8192

db_domain=''

db_recovery_file_dest='/u01/oracle/flash_recovery_area' --建立目录

db_recovery_file_dest_size=2G

diagnostic_dest='/u01/oracle' ---修改

dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'

open_cursors=300

remote_login_passwordfile='EXCLUSIVE'

undo_tablespace='UNDOTBS1'

2创建相应目录:

mkdir -p /u01/oracle/admin/ora11g/adump

mkdir -p /u01/oracle/admin/ora11g/dpdump

mkdir -p /u01/oracle/flash_recovery_area

3创建密码文件:命名规则 orapwSID,目录依旧是 /u01/oracle/product/1120/db_1/dbs/

Linux下orapw+实例名

Windows下pwd+实例名

$ orapwd file=orapwora11g password=oracle

4创建数据库实例

设置环境变量 export ORACLE_SID=crm

执行以下命令

sqlplus /nolog

conn / as sysdba

注意:本处可能报错需要可能的原因: a)glibc-devel-25-58el5_64、libaio-03106-5包是否已安装,命令分别为rpm -q glibc-devel、rpm -q libaio

b)oracle目录权限不足或属组不对,chmod 6751 oracle 授权、chown -R oracleoinstall /u01/oracle 修改属组

执行建库脚本:

startup nomount pfile="/u01/oracle/product/11201/db1/dbs/initcrmora";

CREATE DATABASE "crm"

MAXINSTANCES 8

MAXLOGHISTORY 1

MAXLOGFILES 16

MAXLOGMEMBERS 3

MAXDATAFILES 100

DATAFILE '/u01/oracle/oradata/system01dbf' SIZE 1024M REUSE

EXTENT MANAGEMENT LOCAL

SYSAUX DATAFILE '/u01/oracle/oradata/sysaux01dbf' SIZE 500M REUSE

SMALLFILE DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE '/u01/oracle/oradata/temp01dbf' SIZE 20M REUSE

SMALLFILE UNDO TABLESPACE "UNDOTBS1" DATAFILE '/u01/oracle/oradata/undo01dbf' SIZE 300M REUSE

CHARACTER SET ZHS16GBK

NATIONAL CHARACTER SET AL16UTF16

LOGFILE GROUP 1 ('/u01/oracle/oradata/log01dbf') SIZE 50M,

GROUP 2 ('/u01/oracle/oradata/log02dbf') SIZE 50M,

GROUP 3 ('/u01/oracle/oradata/log03dbf') SIZE 50M;

创建USERS表空间

CREATE SMALLFILE TABLESPACE "USERS" LOGGING DATAFILE '/u01/app/oradata/user01dbf' SIZE 1000M REUSE EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;

ALTER DATABASE DEFAULT TABLESPACE "USERS";

------------------------------------------

SQL> create spfile from pfile;

File created

-----------------------------------------

sqlplus / as sysdba

SQL> show user;

@/u01/oracle/product/11201/db1/rdbms/admin/catalogsql;

@/u01/oracle/product/11201/db1/rdbms/admin/catblocksql;

@/u01/oracle/product/11201/db1/rdbms/admin/catprocsql;

@/u01/oracle/product/11201/db1/rdbms/admin/catoctksql;

@/u01/oracle/product/11201/db1/rdbms/admin/owminstplb;

使用system用户编译

@/u01/oracle/product/11201/db1/sqlplus/admin/pupbldsql;

@/u01/oracle/product/11201/db1/sqlplus/admin/help/hlpbldsql helpussql;

使用sys用户编译

@/u01/oracle/product/11201/db1/javavm/install/initjvmsql;

@/u01/oracle/product/11201/db1/xdk/admin/initxmlsql;

@/u01/oracle/product/11201/db1/xdk/admin/xmljasql;

@/u01/oracle/product/11201/db1/rdbms/admin/catjavasql;

@/u01/oracle/product/11201/db1/rdbms/admin/catexfsql;

@/u01/oracle/product/11201/db1/rdbms/admin/catqmsql change_on_install SYSAUX TEMP YES;

@/u01/oracle/product/11201/db1/rdbms/admin/catxdbjsql;

@/u01/oracle/product/11201/db1/rdbms/admin/catrulsql;

spool /oracle/admin/edidb/scripts/ordinstlog append

@/u01/oracle/product/11201/db1/ord/admin/ordinstsql SYSAUX SYSAUX;

spool off

spool /u01/oracle/admin/ora11g/scripts/interMedialog append

@/u01/oracle/product/11201/db1/ord/im/admin/iminstsql;

spool off

set echo on

spool /oracle/admin/edidb/scripts/lockAccountlog append

BEGIN

FOR item IN ( SELECT USERNAME FROM DBA_USERS WHERE ACCOUNT_STATUS IN ('OPEN', 'LOCKED', 'EXPIRED') AND USERNAME NOT IN (

'SYS','SYSTEM') )

LOOP

dbms_outputput_line('Locking and Expiring: ' || itemUSERNAME);

execute immediate 'alter user ' ||

sysdbms_assertenquote_name(

sysdbms_assertschema_name(

itemUSERNAME),false) || ' password expire account lock' ;

END LOOP;

END;

/

spool off

到此,数据库实例建立完毕。

1、

下面要进行建库,使用命令dbca

[oracle@redhat4 ~]$ dbca

-bash: dbca: command not found

显示找不到命令

有dbca这个命令,但是找不到它,说明环境变量PATH设置有问题

设置环境变量PATH

[oracle@redhat4 ~]$ vi bash_profile

在文件尾部加入下行

export PATH=$PATH:$ORACLE_HOME/bin:

再重新登陆一下oracle用户,使环境变量生效。

[root@redhat4 install]# su - oracle

运行dbca命令

----

2、

成功启动 Database Configuration Assistant 数据库配置助手开始建库。

步骤1: *** 作

请选择希望执行的 *** 作:

这个页面显示了我们通过dbca可以执行的 *** 作

这里我们选 创建数据库

步骤2:选择创建数据库的模板

有一般用途、事务处理、定制数据库、数据仓库四种模板可供选择。

四种模板参数和内容有区别,而安装中的区别在后面的步骤9 数据库内容 页中的内容

一般用途 事务处理 数据仓库 三种模板在步骤9显示的是:

实例方案标签页,自己只能决定是否选择实例方案组件

定制数据库 模板在步骤9显示的是:

数据库组件标签页,可以自己选择组件,但是无法选择实例方案组件

这里我们选择 一般用途 模板

步骤3: 数据库标识

全局数据库名:jiagulun SID:jiagulun

步骤4: 管理选项

决定使不使用Enterprise Manager

em用java编写,用ie访问 如果选择了它我们可以使用基于ie的工具管理oracle

推荐生产中使用。

步骤5: 数据库身份z明

oracle建立中,在数据库内部默认会建很多用户

在这里只是学习,给这些用户设置相同的密码,设为oracle。实际生产中可分别设置,并要保证密码强度。

步骤6: 存储选项

生产中ASM和裸设备使用非常多,而且ASM用的越来越多,

学习中我们使用文件系统。

步骤7: 数据库文件所在位置

决定数据库建在文件系统的那个目录底下

这里是用 所有数据库文件使用公共位置:{ORACLE_BASE}/oradata

这里可以自己选择路径,但自己要记住,方便以后使用。

步骤8: 恢复配置

指定快速恢复区 按默认即可

步骤9:选上示例方案

学习中需要使用的一些案例,实际生产中没有用。

步骤10:初始化参数

oracle数据库是非常吃内存的一个软件,这里要设置oracle使用的内存大小

这些参数事后可以调整

但字符集以后最好不要再调了,这里设定后,就不要改变了,以后调可能会出现问题

数据库字符集选:ZHS16GBK-GBK 16位简体中文,建议选AL32UTF8,实际生产中这两种用的最多。

国外有企业分支机构可以选AL32UTF8

国家字符集选:AL16UTF16

其它默认

步骤11:数据库存储

决定oracle数据库的三类文件 控制文件、数据文件、重做日志组 的 存储位置

三类文件的内容,有什么意义,放到存储结构中讲。

步骤12:创建选项

选 创建数据库

点完成

最后的确认页:

确认自己在各步骤做的选择后,点 确定 开始创建数据库。

创建数据库完成后,Database Configuration Assistant 给出完成页面。

显示的是:

数据库创建完成。详细信息在:/u01/app/oracle/product/1020/db_1/cfgtoollogs/dbca/jiagulun 上的日志文件

数据库参数文件名:/u01/app/oracle/product/1020/db_1/dbs/spfilejiagulunora

Database Control URL 为:>

以上就是关于oracle 一个实例下可以建多个数据库么全部的内容,包括:oracle 一个实例下可以建多个数据库么、怎么创建本地oracle数据库、怎样使用navicat新建一个oracle数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9453996.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存