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=hdu.edu.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在 *** 作系统中的“身份z号码”
管理员身份连接数据库
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\product\10.2.0\db_2\zhouyt\system_01.dbf'
size
100m
Autoextend
on
next
10m
maxsize
unlimited
sysaux
datafile
'C:\oracle\product\10.2.0\db_2\zhouyt\systemaux_01.dbf'
size
60m
Autoextend
on
next
10m
maxsize
unlimited
logfile
group
1
('C:\oracle\product\10.2.0\db_2\zhouyt\log_1_01.rdo')
size
10m,
group
2
('C:\oracle\product\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\product\10.2.0\db_2\sqlplus\admin\pupbld.sql
创建scott模式
@
C:\oracle\product\10.2.0\db_2\RDBMS\ADMIN\scott.sql
*** 作顺序如下:1.创建实例启动用的参数文件。在程序默认的参数文件里修改即可:重命名规则 initSID.ora
/u01/oracle/product/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/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/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、libaio-0.3.106-5包是否已安装,命令分别为rpm -q glibc-devel、rpm -q libaio
b)oracle目录权限不足或属组不对,chmod 6751 oracle 授权、chown -R oracle.oinstall /u01/oracle 修改属组
执行建库脚本:
startup nomount pfile="/u01/oracle/product/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/product/11.2.0.1/db1/rdbms/admin/catalog.sql
@/u01/oracle/product/11.2.0.1/db1/rdbms/admin/catblock.sql
@/u01/oracle/product/11.2.0.1/db1/rdbms/admin/catproc.sql
@/u01/oracle/product/11.2.0.1/db1/rdbms/admin/catoctk.sql
@/u01/oracle/product/11.2.0.1/db1/rdbms/admin/owminst.plb
使用system用户编译
@/u01/oracle/product/11.2.0.1/db1/sqlplus/admin/pupbld.sql
@/u01/oracle/product/11.2.0.1/db1/sqlplus/admin/help/hlpbld.sql helpus.sql
使用sys用户编译
@/u01/oracle/product/11.2.0.1/db1/javavm/install/initjvm.sql
@/u01/oracle/product/11.2.0.1/db1/xdk/admin/initxml.sql
@/u01/oracle/product/11.2.0.1/db1/xdk/admin/xmlja.sql
@/u01/oracle/product/11.2.0.1/db1/rdbms/admin/catjava.sql
@/u01/oracle/product/11.2.0.1/db1/rdbms/admin/catexf.sql
@/u01/oracle/product/11.2.0.1/db1/rdbms/admin/catqm.sql change_on_install SYSAUX TEMP YES
@/u01/oracle/product/11.2.0.1/db1/rdbms/admin/catxdbj.sql
@/u01/oracle/product/11.2.0.1/db1/rdbms/admin/catrul.sql
spool /oracle/admin/edidb/scripts/ordinst.log append
@/u01/oracle/product/11.2.0.1/db1/ord/admin/ordinst.sql SYSAUX SYSAUX
spool off
spool /u01/oracle/admin/ora11g/scripts/interMedia.log append
@/u01/oracle/product/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
到此,数据库实例建立完毕。
数据库实例(instance_name)是用于和 *** 作系统进行联系的标识,也就是说数据库和 *** 作系统之间的交互使用的是数据库实例。数据库名和实例名可以相同也可以不同。在一般情况下,数据库名和实例名是一对一的关系,但如果在oracle并行服务器架构(即oracle实时应用集群)中,数据库名和实例名是一对多的关系。
用系统sysdba权限登录后:查询oracle实例的方法:
方法一:sql”select instance_name from v$instance“
方法二:使用show命令”show parameter instance“。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)