A. oracle11 怎么创建实例
操作顺序如下:
1.创建实例启动用的参数文件。在程序默认的参数文件里修改即可:重命名规则 initSID.ora
/u01/oracle/proct/11.2.0/db_1/dbs/ 下,目录尽量使用绝对路径,采用ORACLE_BASE等环境变量有可能报错。
例 initcrm.ora
db_name='crm' --修改
#memory_target=500m --注释掉
sga_target=200m --添加
pga_aggregate_target=60m --添加
processes = 150
audit_file_dest='/u01/oracle/admin/crm/amp' --建立目录
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/amp
mkdir -p /u01/oracle/admin/ora11g/dpmp
mkdir -p /u01/oracle/flash_recovery_area
3.创建密码文件:命名规则 orapwSID,目录依旧是 /u01/oracle/proct/11.2.0/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-2.5-58.el5_6.4、lio-0.3.106-5包是否已安装,命令分别为rpm -q glibc-devel、rpm -q lio
b)oracle目录权限不足或属组不对,chmod 6751 oracle 授权、chown -R oracle.oinstall /u01/oracle 修改属组
执行建库脚本:
startup nomount pfile="/u01/oracle/proct/11.2.0.1/db1/dbs/initcrm.ora";
CREATE DATABASE "crm"
MAXINSTANCES 8
MAXLOGHISTORY 1
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
DATAFILE '/u01/oracle/oradata/system01.dbf' SIZE 1024M REUSE
EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE '/u01/oracle/oradata/sysaux01.dbf' SIZE 500M REUSE
SMALLFILE DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE '/u01/oracle/oradata/temp01.dbf' SIZE 20M REUSE
SMALLFILE UNDO TABLESPACE "UNDOTBS1" DATAFILE '/u01/oracle/oradata/undo01.dbf' SIZE 300M REUSE
CHARACTER SET ZHS16GBK
NATIONAL CHARACTER SET AL16UTF16
LOGFILE GROUP 1 ('/u01/oracle/oradata/log01.dbf') SIZE 50M,
GROUP 2 ('/u01/oracle/oradata/log02.dbf') SIZE 50M,
GROUP 3 ('/u01/oracle/oradata/log03.dbf') SIZE 50M;
创建USERS表空间
CREATE SMALLFILE TABLESPACE "USERS" LOGGING DATAFILE '/u01/app/oradata/user01.dbf' 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/proct/11.2.0.1/db1/rdbms/admin/catalog.sql;
@/u01/oracle/proct/11.2.0.1/db1/rdbms/admin/catblock.sql;
@/u01/oracle/proct/11.2.0.1/db1/rdbms/admin/catproc.sql;
@/u01/oracle/proct/11.2.0.1/db1/rdbms/admin/catoctk.sql;
@/u01/oracle/proct/11.2.0.1/db1/rdbms/admin/owminst.plb;
使用system用户编译
@/u01/oracle/proct/11.2.0.1/db1/sqlplus/admin/pupbld.sql;
@/u01/oracle/proct/11.2.0.1/db1/sqlplus/admin/help/hlpbld.sql helpus.sql;
使用sys用户编译
@/u01/oracle/proct/11.2.0.1/db1/javavm/install/initjvm.sql;
@/u01/oracle/proct/11.2.0.1/db1/xdk/admin/initxml.sql;
@/u01/oracle/proct/11.2.0.1/db1/xdk/admin/xmlja.sql;
@/u01/oracle/proct/11.2.0.1/db1/rdbms/admin/catjava.sql;
@/u01/oracle/proct/11.2.0.1/db1/rdbms/admin/catexf.sql;
@/u01/oracle/proct/11.2.0.1/db1/rdbms/admin/catqm.sql change_on_install SYSAUX TEMP YES;
@/u01/oracle/proct/11.2.0.1/db1/rdbms/admin/catxdbj.sql;
@/u01/oracle/proct/11.2.0.1/db1/rdbms/admin/catrul.sql;
spool /oracle/admin/edidb/scripts/ordinst.log append
@/u01/oracle/proct/11.2.0.1/db1/ord/admin/ordinst.sql SYSAUX SYSAUX;
spool off
spool /u01/oracle/admin/ora11g/scripts/interMedia.log append
@/u01/oracle/proct/11.2.0.1/db1/ord/im/admin/iminst.sql;
spool off
set echo on
spool /oracle/admin/edidb/scripts/lockAccount.log 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_output.put_line('Locking and Expiring: ' || item.USERNAME);
execute immediate 'alter user ' ||
sys.dbms_assert.enquote_name(
sys.dbms_assert.schema_name(
item.USERNAME),false) || ' password expire account lock' ;
END LOOP;
END;
/
spool off
到此,数据库实例建立完毕。
B. Oracle实例如何创建
除非使用并行Oracle服务器选项,否则每个Oracle数据库都有一个实例与之相关,一个数据库被唯一的一个实例装载。实例结构允许RDBMS同时对来自多个用户的不同种类事务的请求提供服务,与此同时提供一流的性能、容错性、数据的一致性和安全性。 值得注意的是,这里定义的术语“进程”是指在没有用户干预的情况下正在运行的任务。你的操作系统可能将之称作“进程”,或者使用其他术语,例如任务、作业、线程和其他类似的术语。 在UNIX实现多任务操作系统后,实例是松散的结构方式。在一起工作的离散的进程在实现实例的目标的RDBMS中完成指定的任务。每一个进程都有各自的一个内存块,该内存块用于保存私有变量、地址堆栈和其他运行时的信息。进程间使用公共共享区并在公共共享区内完成它们的工作。公共共享区是能够在同一时间内被不同程序和不同进程读写的一块内存区。该内存块称为系统全局区(SGA)。因为SGA驻留在一个共享内存段中,所以它经常被称作共享全局区。 你可以认为后台进程就像数据库的手,直接处理数据库的组件;你也可以认为SGA就像大脑,在必要时间接地调度手处理它们的信息与存储检索。SGA参与发生在数据库中全部的信息和服务器的处理。单用户的Oracle配置(例如PersonalOracleLite),不使用多进程执行数据库的功能。相反,所有的数据库功能由一个Oracle进程完成。由于这个原因,单用户也称为单进程Oracle。 1)创建一个Oracle实例(非安装阶段)。 2)由实例安装数据库(安装阶段)。 3)打开数据库(打开阶段)。 Oracle实例在数据库启动的非安装阶段创建,当数据库经过非安装阶段,读取init.ora参数文件,启动后台进程,初始化系统全局区(SGA)。init.ora文件定义了实例的配置,包括内存结构的大小和启动后台进程的数量和类型等。实例名根据环境变量OracleSID设置,它不一定要与打开的数据库名称相同(但是习惯上通常如此)。 下一阶段称为安装阶段。init.ora文件中的控制文件参数值决定数据库的安装实例。在安装阶段,读取控制文件并使其成为可访问的,可以对控制文件内存储的数据进行查询和修改。 最后的阶段就是打开数据库。在这一阶段,其名字存储在控制文件中的数据库文件以排它使用方式被实例锁定,使数据库能够被普通用户访问。打开是数据库的正常操作状态。在数据库打开之前,只有DBA能访问数据库,且只能通过服务器管理器对其进行访问。 为了改变数据库的操作状态,必须作为内部连接到数据库,或拥有SYSDBA特权。当数据库从关闭状态到打开状态时,你可以明确地单步调试数据库的每一个操作状态,但当关闭数据库时,只能从当前运行状态转到完全关闭状态。例如,可以在服务器管理器工具中执行STARTUP NOMOUNT命令,这将使数据库处在非安装阶段,接下来可以运行ALTER DATABASE MOUNT或者运行ALTER DATABASE OPEN命令以单步调试到操作阶段。无论是在何种操作状态下,如果执行SHUTDOWN命令,将完全关闭数据库。例如,数据库不能从打开状态转到安装状态。 没有安装数据库的实例被称为空闲的—它使用内存,但不做任何工作。一个实例只能唯一地与一个数据库连接源码天空 ,而且除非使用并行服务器,否则对一个数据库也只分配一个实例。实例是数据管理的核心—它做所有的工作,而数据库存储所有的数据。
C. oracle怎么创建数据库实例
oracle手动创建数据库步骤如下所示:
1.编写初始化参数文件
2.设置操作系统环境变量
3.创建实例
4.以管理员身份连接数据库
5.启动实例
6.create database 创建数据库
7.运行数据字典脚本
8.Oracle的网络配置 (客户端连接到服务端)
初始化参数文件
从%ORACLE_HOME%\admin\sample\pfile从复制initsmpl.ora文件,并黏贴到$ORACLE_HOME%\database目录下,改名为init<sid>假设改为initzhouyt.ora.(init为文本文件)
对initzhouyt.ora内容进行修改
新增参数
* instance_name=zhouyt
* db_domain=h.e.cn
修改参数
* db_name=zhouyt
* db_block_size=8192(8kM)
* remote_login_passwordfile=exclusive
操作系统环境变量
设置操作系统环境变量oracle_sid指向数据库实例的名称
set oracle_sid=zhouyt
该命令在window dos窗口下只对当前有效,当关闭窗口则失效,想要一直有效,则需要在系统环境变量中修改
创建实例
实用工具oradim使用
在DOS窗口输入命令 oradim -new -sid zhouyt -intpwd sys123(sys的密码,sys是管理员) -startmode auto
sid是Oracle在操作系统中的“身份证号码”
管理员身份连接数据库
sqlplus实用工具登录数据库
在DOS命令输入sqlplus/nolog 只是登录状态
以数据库管理员身份连接数据库
在上面的基础上输入命令 connect sys/sys123 as sysdba
因为以 数据库管理员身份 登录可以 安装数据库
启动实例
将文本初始化参数文件pfile转化为二进制初始化参数文件spfile
因为数据库启动需要找到配置文件,默认寻找二进制文件,也可以手动启动文本文件,那这一步就不需要了
输入命令 create spfile from pfile; (将会报错,因为文本文件比较老相对于Oracle 10g), 这个时候我们需要修改配置文件initzhouyt.ora
这个时候在%ORACLE_HOME%\database文件下会生成SPFILEZHOUYT.ora文件
以nomount形式启动实例
命令 startup nomount,将会出现错误,当我们按照提示修改文本文件以后,如果我们还是按照startup nomount来启动的话,我们要生成相应的二进制文件来覆盖旧的二进制文件
并注释%seed_control%
create databae 创建数据库
创建数据库脚本
三个文件
控制文件
数据文件
重做日志文件
create database zhouyt
datafile
'C:\oracle\proct\10.2.0\db_2\zhouyt\system_01.dbf' size 100m
Autoextend on next 10m maxsize unlimited
sysaux datafile
'C:\oracle\proct\10.2.0\db_2\zhouyt\systemaux_01.dbf' size 60m
Autoextend on next 10m maxsize unlimited
logfile
group 1 ('C:\oracle\proct\10.2.0\db_2\zhouyt\log_1_01.rdo') size 10m,
group 2 ('C:\oracle\proct\10.2.0\db_2\zhouyt\log_2_01.rdo') size 10m
character set zhs16gbk;
需要确保目录文件"db_2\zhouyt"存在
生成两个数据文件和两个重做日志文件,那么控制文件呢?
运行数据字典脚本
__数据库创建后,系统会生成两个管理员用户sys和system
运行3个数据字典脚本
catalog.sql 创建系统常用的数据字典视图和同义词 (sys登录);
catproc.sql 建立PL/SQL功能的使用环境,还创建几个PL/SQL包用于扩展RDBMS功能 (sys登录);
pupbld.sql 使用SQL*PLUS环境时需要 (system登录)
在命令行输入@ 加脚本文件的绝对路径
第二个脚本过程和第一个一样
执行第三个脚本需要切换到system用户
connect system/manager
@ C:\oracle\proct\10.2.0\db_2\sqlplus\admin\pupbld.sql
创建scott模式
@ C:\oracle\proct\10.2.0\db_2\RDBMS\ADMIN\scott.sql
D. 非图形界面linux创建oracle的实例
1.查看oracle相关的系统参数
$su - oracle //进入oracle用户模式下
$echo $ORACLE_HOME
$echo $ORACLE_BASE //查看oracle的base目录
2.创建实例配置文件
$cd $ORACLE_HOME
$cd dbs
cp init.ora initcloud.ora (命名规则:initSID.ora)
vim initcloud.ora
3.相关文件创建
0)文件修改完成后,在ORACLE_BASE/admin目录下,创建一个与SID一致的目录cloud
1)在cloud目录下创建:mkdir amp bmp cmp pfile ump
2)在ORACLE_BASE/oradata 目录下创建cloud目录
需要的基本设置已经弄完了,开始创建新的实例
4.添加环境变量参数:
export ORACLE_SID=cloud #可以写到/etc/profile或者~/.bash_profile中
5.创建实例;
sqlplus / as sysdba
startup nomount;
6.测试登录:
1)添加内容到tnsnames.ora
2)sqlplus /nolog
conn 用户名/密码@实例名
E. linux下怎么创建oracle实例
linux下,系统用户oracle,执行dbca命令(要确定你有图形界面啊,不然这个命令打不开),然后按照要求一步一步来,就能建立一个数据库了。至于实例,只要这个数据库启动了,那么他就是一个实例。
如果没有图形界面,那么就静默设置安装数据库,具体的忘记了,好象需要写一个脚本,去网络搜一下,应该有相关的内容的。
F. linux下怎么新建一个oracle数据库实例
直接在命令行输入dbca 通过UI界面创建。
oracle一个实例下只能有一个数据库,所以创建数据库肯定也要重新创建一个实例的。
G. linux下 oracle 怎么创建多个实例
1、删除oracle实例记录方法一、从图形界面运行dbca,选择删除,按提示一路next;方法二、我用的方法1.1、关闭所有oracle进程,其实只要shutdownabort即可。因我的机器oracle没设置为开机自动启动,所以重启机器后oracle进程一个也没有,系统很是干净。1.2、删除实例数据文件和mp文件;find$ORACLE_BASE/-name$ORACLE_SID在我系统里面显示如下,将这些目录直接删除;/u01/app/oracle/admin/testdb/u01/app/oracle/oradata/testdb/u01/app/oracle/proct/10.2.0/db_1/cfgtoollogs/emca/testdb/u01/app/oracle/proct/10.2.0/db_1/cfgtoollogs/dbca/testdb1.3、删除其他配置文件find$ORACLE_BASE/*-name'*[Bb][Tt][Ss][Dd][Bb]2*'|grep-vadmin|grep-voradata将查找结果出现的文件也一一删除,当然你可以用xarg结合rm删除。我find结果如下:/u01/app/oracle/flash_recovery_area/testdb/u01/app/oracle/proct/10.2.0/db_1/cfgtoollogs/emca/testdb/u01/app/oracle/proct/10.2.0/db_1/cfgtoollogs/dbca/testdb/u01/app/oracle/proct/10.2.0/db_1/oc4j/j2ee/OC4J_DBConsole_host_testdb/u01/app/oracle/proct/10.2.0/db_1/rdbms/log/alert_testdb.log/u01/app/oracle/proct/10.2.0/db_1/host_testdb/u01/app/oracle/proct/10.2.0/db_1/host_testdb/sysman/emd/state/.alert_testdb.log/u01/app/oracle/proct/10.2.0/db_1/host_testdb/sysman/log/nmctestdb1521/u01/app/oracle/proct/10.2.0/db_1/dbs/alert_testdb.log/u01/app/oracle/proct/10.2.0/db_1/dbs/lktestdb/u01/app/oracle/proct/10.2.0/db_1/dbs/hc_testdb.dat/u01/app/oracle/proct/10.2.0/db_1/dbs/orapwtestdb/u01/app/oracle/proct/10.2.0/db_1/dbs/spfiletestdb.ora1.4、最重要的一步,如果你要重建的实例和刚删除实例的实例名一样的话,删除/etc/oratab文件最后一段。至此,已干净删除linux系统的oracle实例!链接:5790744
H. linux下如何使用oracle自定义的实例
windows下和linux下大同小异,使用不同实例可以通过声明不同的oracle_sid来达到目的,简单来说实例和数据库没有必然联系,一个库可以被多个实例打开当然同一时间只能有一个实例打开库(RAC除外),你可以随便声明一个ORACLE_SID的环境变量,然后复制一份pfile文件改名成init实例名.ora的样子,然后修改相应参数就能开库。
I. Linux新手入门系列:创建oracle实例
注意:
(1)执行dbca
(2)实例创建过程
(3)查看监听状态
J. linux 怎么创建oracle 数据库实例
直接在命令行输入dbca 通过UI界面创建就可以啦
oracle一个实例下只能有一个数据库,所以创建数据库肯定也要重新创建一个实例的。
不过听说oracle 12C 在一个实例下可以有多个数据库了,和DB2差不多。
看你的oracle是什么版本了