您的位置:首页 > 数据库 > Oracle

oracle 10g 创建数据库(手工)

2015-09-19 13:09 661 查看
oracle 10g 创建数据库(手工)

第一:手工建库

手工建库比起使用DBCA建库来说,是比较麻烦的,但是如果我们学好了手工建库的话,就可以使我们更好地理解Oracle数据库的体系结构。手工建库需要经过几个步骤,每一个步骤都非常关键。它包括:

 1. 创建必要的相关目录

  2. 创建初始化参数文件

  3. 设置环境变量Oracle_sid

  4. 创建实例

  5. 创建口令文件

  6. 启动数据库到nomount(实例)状态

  7. 执行建库脚本

  8. 执行catalog脚本创建数据字典

  9. 执行catproc创建package包

  10. 执行pupbld

  11. 由初始化参数文件创建spfile文件

  12. 执行scott脚本创建scott模式

  13. 用命令测试数据库创建是否完成

  14. 配置EM,使得能够通过浏览器管理和控制数据库

Oracle的安装路径:/u01/app/oracle/  创建的数据库名称:ocpone

做完了以上的步骤之后就可以使用“SQL>alter database open;”

打开数据库正常的使用了。

实验系统平台:CentOS5.5 数据库系统版本:Oracle Database 10g

Oracle的安装路径:/u01/app/oracle/      

创建的数据库名称:ocpone

#切换路径

[oracle@localhost orcl]$ cd /u01/app/oracle/oradata/orcl/

[oracle@localhost orcl]$ ls

control01.ctl example01.dbf redo03.log temp01.dbf

control02.ctl redo01.log sysaux01.dbf undotbs01.dbf

control03.ctl redo02.log system01.dbf users01.dbf

1、打开命令行工具,创建必要的相关目录

#创建相关目录

[oracle@localhost orcl]$

adump, bdump, dpdump, udump 应放在/u01/app/oracle/admin/"SID"/ 路径下

adump :审计信息

bdump :后台进程trace 和alert log ,就是说 alert_sid.log也存在这个目录中

cdump :core trace,一般是用来日志应用程序的 除非数据库出了问题 否则基本上不会有什么信息

dpdump:是存放一些登录信息的

pfile :初始化参数文件 initSID

udump :前台手动trace的 比如sql trace之后session的trace文件

mkdir /u01/app/oracle/admin/ocpone

mkdir /u01/app/oracle/admin/ocpone/adump

mkdir /u01/app/oracle/admin/ocpone/bdump

mkdir /u01/app/oracle/admin/ocpone/cdump

mkdir /u01/app/oracle/admin/ocpone/dpdump

mkdir /u01/app/oracle/admin/ocpone/udump

mkdir /u01/app/oracle/admin/ocpone/pfile

/u01/app/oracle/admin/ocpone目录下的几个子目录主要用于存放数据库运行过程中的跟踪信息。

最重要的两上子目录是bdump和udump目录,bdump目录存放的是数据库运行过程中的各个后台进程的跟踪信息,

当中alert文件是警告文件,其文件名称为alert_book.log,当数据库出现问题时,首先就可以去查看此文件以找出原因,

手工创建过程中出现的各种问题往往也可以通过查看这个文件找到原因。Udump目录存放和特定会话相关的跟踪信息。

datafile应放在/u01/app/oracle/oradata/"SID"/ 路径下

mkdir /u01/app/oracle/oradata/ocpone

/u01/app/oracle/oradata/ocpone目录存放各种数据库文件,包括控制文件、数据文件、重做日志文件。

或者用下面方法创建目录,先配置好环境变量,然后再创建所需目录。好像比较方便。

1.需要先修改好环境变量:

[oracle@localhost ~]$ vi .bash_profile

....

export PATH

umask 022

export ORACLE_BASE=/u01/app/oracle;export ORACLE_BASE

export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1;

export ORACLE_HOME

export ORACLE_SID=orcl

export PATH=$ORACLE_HOME/bin:$PATH; export PATH

NLS_LANG='Simplified Chinese_china'

DB_HOME=/u01/app/oracle/oradata

......

2.创建

mkdir -p $ORACLE_BASE/admin/ocpone

cd $ORACLE_BASE/admin/ocpone

mkdir adump bdump cdump dpdump udump pfile

mkdir -p $DB_HOME/ocpone

2、创建初始化参数文件

数据库系统启动时须要用初始化参数文件的设置分配内存、启动必要的后台进程的。因此,初始化参数文件创建的是否正确、参数设置是否正确关系着整个建库的“命运”。

可以拷贝现有的初始化参数文件并将其做适当的修改,没有必要用手工去一句一句地写出来,因为初始化参数文件的结构体系基本上都是一样的。在安装Oracle的时候,系统已经安装了一个名为orcl的启动数据库,于是可以从它那里得到一份初始化参数文件。

找到orcl的init.ora文件,拷贝后修改。

[oracle@localhost orcl]$ cd /u01/app/oracle/admin/orcl/pfile

[oracle@localhost pfile]$ ls

init.ora.814201534429

[oracle@localhost pfile]$ cat init.ora.814201534429

##############################################################################

# Copyright (c) 1991, 2001, 2002 by Oracle Corporation

##############################################################################

###########################################

# Cache and I/O

###########################################

db_block_size=8192

db_file_multiblock_read_count=16

###########################################

# Cursors and Library Cache

###########################################

open_cursors=300

###########################################

# Database Identification

###########################################

db_domain=""

db_name=orcl

###########################################

# Diagnostics and Statistics

###########################################

background_dump_dest=/u01/app/oracle/admin/orcl/bdump

core_dump_dest=/u01/app/oracle/admin/orcl/cdump

user_dump_dest=/u01/app/oracle/admin/orcl/udump

###########################################

# File Configuration

###########################################

control_files=("/u01/app/oracle/oradata/orcl/control01.ctl", "/u01/app/oracle/oradata/orcl/control02.ctl", "/u01/app/oracle/oradata/orcl/control03.ctl")

db_recovery_file_dest=/u01/app/oracle/flash_recovery_area

db_recovery_file_dest_size=2147483648

###########################################

# Job Queues

###########################################

job_queue_processes=10

###########################################

# Miscellaneous

###########################################

compatible=10.2.0.1.0

###########################################

# Processes and Sessions

###########################################

processes=150

###########################################

# SGA Memory

###########################################

sga_target=605028352

###########################################

# Security and Auditing

###########################################

audit_file_dest=/u01/app/oracle/admin/orcl/adump

remote_login_passwordfile=EXCLUSIVE

###########################################

# Shared Server

###########################################

dispatchers="(PROTOCOL=TCP) (SERVICE=orclXDB)"

###########################################

# Sort, Hash Joins, Bitmap Indexes

###########################################

pga_aggregate_target=201326592

###########################################

# System Managed Undo and Rollback Segments

###########################################

undo_management=AUTO

undo_tablespace=UNDOTBS1

[oracle@localhost pfile]$

#拷贝初始化参数文件,将init.ora.814201534429拷贝为initocpone.ora

cp /u01/app/oracle/admin/orcl/pfile/init.ora.814201534429 /u01/app/oracle/admin/ocpone/pfile/initocpone.ora

#

[oracle@localhost pfile]$ cp /u01/app/oracle/admin/orcl/pfile/init.ora.81420153429 /u01/app/oracle/admin/ocpone/pfile/initocpone.ora

[oracle@localhost pfile]$ cd /u01/app/oracle/admin/ocpone/pfile

[oracle@localhost pfile]$ ls

initocpone.ora

[oracle@localhost pfile]$ vi initocpone.ora

#修改实例名,和相应的路径

[oracle@localhost pfile]$ cat initocpone.ora

##############################################################################

# Copyright (c) 1991, 2001, 2002 by Oracle Corporation

##############################################################################

###########################################

# Cache and I/O

###########################################

db_block_size=8192

db_file_multiblock_read_count=16

###########################################

# Cursors and Library Cache

###########################################

open_cursors=300

###########################################

# Database Identification

###########################################

db_domain=""

db_name=ocpone ——修改为当前数据库名称

###########################################

# Diagnostics and Statistics

###########################################

background_dump_dest=/u01/app/oracle/admin/ocpone/bdump

core_dump_dest=/u01/app/oracle/admin/ocpone/cdump

user_dump_dest=/u01/app/oracle/admin/ocpone/udump

——修改了路径

###########################################

# File Configuration

###########################################

control_files=("/u01/app/oracle/oradata/ocpone/control01.ctl", "/u01/app/oracle/oradata/ocpone/control02.ctl", "/u01/app/oracle/oradata/ocpone/control03.ctl")

db_recovery_file_dest=/u01/app/oracle/flash_recovery_area

db_recovery_file_dest_size=2147483648

——修改了control_files路径

###########################################

# Job Queues

###########################################

job_queue_processes=10

###########################################

# Miscellaneous

###########################################

compatible=10.2.0.1.0

###########################################

# Processes and Sessions

###########################################

processes=150

###########################################

# SGA Memory

###########################################

sga_target=605028352

###########################################

# Security and Auditing

###########################################

audit_file_dest=/u01/app/oracle/admin/ocpone/adump

remote_login_passwordfile=EXCLUSIVE

——修改了路径

###########################################

# Shared Server

###########################################

dispatchers="(PROTOCOL=TCP) (SERVICE=ocponeXDB)"

——orcl改成ocpone

###########################################

# Sort, Hash Joins, Bitmap Indexes

###########################################

pga_aggregate_target=201326592

###########################################

# System Managed Undo and Rollback Segments

###########################################

undo_management=AUTO

undo_tablespace=UNDOTBS1

――注意此处的“UNDOTBS1”要和建库脚步本中对应

#创建pfile文件

[oracle@localhost create]$ cd /u01/app/oracle/product/10.2.0/db_1/dbs/

[oracle@localhost dbs]$ ls

hc_orcl.dat init.ora orapwocpone spfileorcl.ora

initdw.ora lkORCL orapworcl

[oracle@localhost dbs]$ cat init.ora

[oracle@localhost dbs]$ strings spfileorcl.ora > initocpone.ora

[oracle@localhost dbs]$ vi initocpone.ora

#orcl全部改为ocpone

ocpone.__db_cache_size=423624704

ocpone.__java_pool_size=4194304

ocpone.__large_pool_size=4194304

ocpone.__shared_pool_size=167772160

ocpone.__streams_pool_size=0

*.audit_file_dest='/u01/app/oracle/admin/ocpone/adump'

*.background_dump_dest='/u01/app/oracle/admin/ocpone/bdump'

*.compatible='10.2.0.1.0'

*.control_files='/u01/app/oracle/oradata/ocpone/control01.ctl','/u01/app/oracle/oradata/ocpone/control02.ctl','/u01/app/oracle/oradata/ocpone/control03.ctl'

*.core_dump_dest='/u01/app/oracle/admin/ocpone/cdump'

*.db_block_size=8192

*.db_domain=''

*.db_file_multiblock_read_count=16

ocpone.__db_cache_size=423624704

ocpone.__java_pool_size=4194304

ocpone.__large_pool_size=4194304

ocpone.__shared_pool_size=167772160

ocpone.__streams_pool_size=0

*.audit_file_dest='/u01/app/oracle/admin/ocpone/adump'

*.background_dump_dest='/u01/app/oracle/admin/ocpone/bdump'

*.compatible='10.2.0.1.0'

*.control_files='/u01/app/oracle/oradata/ocpone/control01.ctl','/u01/app/oracle/oradata/ocpone/control02.ctl','/u01/app/oracle/oradata/ocpone/control03.ctl'

*.core_dump_dest='/u01/app/oracle/admin/ocpone/cdump'

*.db_block_size=8192

*.db_domain=''

*.db_file_multiblock_read_count=16

*.db_name='ocpone'

*.db_recovery_file_dest='/u01/app/oracle/flash_recovery_area'

*.db_recovery_file_dest_size=2147483648

*.dispatchers='(PROTOCOL=TCP) (SERVICE=ocponeXDB)'

*.job_queue_processes=10

*.open_cursors=300

*.pga_aggregate_target=201326592

*.processes=150

*.remote_login_passwordfile='EXCLUSIVE'

*.sga_target=605028352

#不open没有办法重新创建undo 表空间,所以决定先用系统默认的undo表空间来启动,然后重建undo

#*.undo_management='AUTO'

#*.undo_tablespace='UNDOTBS1'

undo_management=manual

undo_tablespace='system'

*.user_dump_dest='/u01/app/oracle/admin/ocpone/udump'

3、打开命令行,设置环境变量oracle_sid

[oracle@localhost pfile]$ cd /

[oracle@localhost /]$ export ORACLE_SID=ocpone

[oracle@localhost /]$ echo $ORACLE_SID

ocpone

设置环境变量的目地是在默认的情况下,指定命令行中所操作的数据库实例是ocpone。

4.创建密码文件

[oracle@localhost oracle]$ cd $ORACLE_HOME/dbs

[oracle@localhost product]$ cd /u01/app/oracle/product/10.2.0/db_1/dbs

[oracle@localhost dbs]$ ls

hc_orcl.dat initdw.ora init.ora lkORCL orapworcl spfileorcl.ora

#密码文件名:orapw&"SID"

[oracle@localhost dbs]$ orapwd file=orapwocpone password='密码'

[oracle@localhost dbs]$ ls

hc_orcl.dat init.ora orapwocpone spfileorcl.ora

initdw.ora lkORCL orapworcl

5.修改监听

[oracle@localhost oracle]$ cd $ORACLE_HOME/network/admin

或者

[oracle@localhost 10.2.0]$ cd /u01/app/oracle/product/10.2.0/db_1/network/admin/

[oracle@localhost admin]$ ls

listener.ora samples shrept.lst sqlnet.ora tnsnames.ora

[oracle@localhost admin]$ vi tnsnames.ora

# tnsnames.ora Network Configuration File: /u01/app/oracle/product/10.2.0/db_1/network/admin/tnsnames.ora

# Generated by Oracle configuration tools.

ORCL =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = orcl)

)

)

EXTPROC_CONNECTION_DATA =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))

)

(CONNECT_DATA =

(SID = PLSExtProc)

(PRESENTATION = RO)

)

)

#复制已有的ORCL,然后直接修改SERVICE_NAME

#ocpone

OCPONE =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = ocpone)

)

)

"tnsnames.ora" 40L, 743C written

[oracle@localhost admin]$

#创建建库脚本:

[oracle@localhost ~]$ cd $ORACLE_BASE/admin/ocpone

[oracle@localhost ocpone]$ ls

adump cdump dbupm dpdump pfile udump

[oracle@localhost ocpone]$ mkdir create

[oracle@localhost ocpone]$ cd create/

[oracle@localhost create]$ ls

此处存放安装的日志和脚本

6. 创建实例(即后台控制服务)

[oracle@localhost admin]$ echo $ORACLE_SID

ocpone

[oracle@localhost admin]$ sqlplus /nolog

SQL*Plus: Release 10.2.0.1.0 - Production on Tue Sep 15 22:10:58 2015

Copyright (c) 1982, 2005, Oracle. All rights reserved.

//----------------------------------------------------------------------//

#出现问题,提示参数不对

SQL> conn / as sysdba

Connected to an idle instance.

SQL> spool $ORACLE_BASE/admin/ocpone/create/createdb

SP2-0606: Cannot create SPOOL file "/u01/app/oracle/admin/ocpone/create/createdb.lst"

SQL>

SQL> startup nomount

ORA-00444: background process "MMAN" failed while starting

ORA-07446: sdnfy: bad value '' for parameter .

SQL>

#经查/u01/app/oracle/product/10.2.0/db_1/dbs/下的initocpone.ora文件没有,补做

[oracle@localhost dbs]$ strings spfileorcl.ora > initocpone.ora

#查看

[oracle@localhost dbs]$ vi initocpone.ora

initocpone.ora 中的

background_dump_dest='/u01/app/oracle/admin/ocpone/bdump'

前面创建文件夹时创建错了,创建了一个dbupm文件夹,应该是bdump文件夹,重新补一个

[oracle@localhost ocpone]$ ls

adump cdump create dbupm dpdump pfile udump

[oracle@localhost ocpone]$ mkdir bdump

[oracle@localhost ocpone]$ ls

adump bdump cdump create dbupm dpdump pfile udump

//----------------------------------------------------------------------//

#启动到nomount状态

SQL> startup nomount

ORACLE instance started.

Total System Global Area 608174080 bytes

Fixed Size 1220820 bytes

Variable Size 176164652 bytes

Database Buffers 423624704 bytes

Redo Buffers 7163904 bytes

SQL> shutdown immediate

ORA-01109: database not open

Database dismounted.

ORACLE instance shut down.

SQL> quit

Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production

With the Partitioning, OLAP and Data Mining options

参考文档:

Linux 手工建建立oracle 数据库
http://blog.sina.com.cn/s/blog_8fa7b9f50101cntf.html
[oracle@localhost admin]$ echo $ORACLE_SID

ocpone

[oracle@localhost admin]$ sqlplus /nolog

SQL*Plus: Release 10.2.0.1.0 - Production on Tue Sep 15 23:55:42 2015

Copyright (c) 1982, 2005, Oracle. All rights reserved.

SQL> startup nomount

ORA-01031: insufficient privileges

SQL> connect / as sysdba

Connected to an idle instance.

SQL> startup nomount pfile='$ORACLE_HOME/dbs/initocpone.ora';

ORACLE instance started.

Total System Global Area 608174080 bytes

Fixed Size 1220820 bytes

Variable Size 176164652 bytes

Database Buffers 423624704 bytes

Redo Buffers 7163904 bytes

#初始化参数:

PFILE: Initialization Parameter Files,初始化参数文件,是个文本文件,可以使用编辑器修改该文件的内容。

SPFILE: Server Parameter Files, 服务器参数文件,是二进制文件,不能直接编辑。

SPFILE命名规范:spfile&"SID".ora

#创建SPFILE文件,

SQL> create spfile = '/u01/app/oracle/product/10.2.0/db_1/dbs/spfileocpone.ora' from pfile = '/u01/app/oracle/product/10.2.0/db_1/dbs/initocpone.ora';

File created.



SQL> create spfile = '/u01/app/oracle/product/10.2.0/db_1/dbs/spfileocpone.ora' from pfile = '$ORACLE_HOME/dbs/initocpone.ora';

#出现错误

create database ocpone

*

ERROR at line 1:

ORA-01092: ORACLE instance terminated. Disconnection forced

脚本在执行过程中 突然instance terminated ,于是执行shutdown immediate

SQL> shutdown immediate

ORA-24324: service handle not initialized

ORA-01041: internal error. hostdef extension doesn't exist

SQL>

#经查, 是由于数据库不open没有办法重新创建undo 表空间,所以决定先用系统默认的undo表空间来启动,然后重建undo

表空间,具体操作如下:

  

  SQL> create pfile from spfile;

  

  文件已创建。

  

  修改pfile文件

  

  #*.undo_management='AUTO'

  #*.undo_tablespace='UNDOSTB1'

  undo_management=manual

  undo_tablespace='system'

  

  关闭数据库,并且从目录$ORACLE_HOME/dbs/ 去掉 spfiletestct.ora文件

  

  重新启动

SQL> create pfile from spfile;

File created.

SQL>

SQL> create spfile = '/u01/app/oracle/product/10.2.0/db_1/dbs/spfileocpone.ora' from pfile = '$ORACLE_HOME/dbs/initocpone.ora';

File created.

#启动到nomount状态

SQL> startup nomount

ORACLE instance started.

Total System Global Area 608174080 bytes

Fixed Size 1220820 bytes

Variable Size 176164652 bytes

Database Buffers 423624704 bytes

Redo Buffers 7163904 bytes

#创建数据库

SQL> create database ocpone

2 maxinstances 8

3 maxlogfiles 16

4 maxlogmembers 3

5 maxloghistory 1

6 maxdatafiles 150

7 logfile group 1 '/u01/app/oracle/oradata/ocpone/redo01a.log'size 10M,

8 group 2 '/u01/app/oracle/oradata/ocpone/redo01b.log'size 10M,

9 group 3 '/u01/app/oracle/oradata/ocpone/redo01c.log'size 10M

10 datafile '/u01/app/oracle/oradata/ocpone/system01.dbf' size 100M

11 autoextend on next 10 extent management local

12 sysaux datafile '/u01/app/oracle/oradata/ocpone/sysaux01.dbf' size 30M

13 autoextend on next 10M

14 default temporary tablespace temp

15 tempfile '/u01/app/oracle/oradata/ocpone/temp01.dbf' size 10M autoextend on next 5M

16 character set ZHS16GBK

17 national character set AL16UTF16

18 user sys identified by oracle

19 user system identified by oracle

20 ;

Database created.

SQL>

#这里少了一段处理过程,忘记拷贝过程了。就简单描述一下吧。

参考内容:

问题:ora-01092 oracle instance terminated disconnection forced
http://blog.sina.com.cn/s/blog_55f7a12f0100oiwa.html
Linux 手工建建立oracle 数据库
http://blog.sina.com.cn/s/blog_8fa7b9f50101cntf.html
Linux环境下手工创建Oracle 10g数据库
http://www.linuxidc.com/Linux/2008-04/12317.htm
前面创建数据库因为没有办法先创建UNDO表空间,所以后面需要补一下,然后再修改参数文件。

#创建UNDO表空间

CREATE UNDO TABLESPACE undo01

DATAFILE '/u01/app/oracle/oradata/undo01.dbf'

SIZE 500M REUSE

autoextend on;

修改pfile文件

  

  *.undo_management='AUTO'

  *.undo_tablespace='undo01'

  #undo_management=manual

  #undo_tablespace='system'

  关闭数据库,并且从目录$ORACLE_HOME/dbs/ 去掉 spfiletestct.ora文件

  

  重新启动

启动数据库后检查一下。

如果启动时就失败了,就检查undo_tablespace的表空间名称是否设置正确。

[root@localhost ~]# su - oracle

[oracle@localhost ~]$ echo $ORACLE_SID

[oracle@localhost ~]$ export ORACLE_SID=ocpone

[oracle@localhost ~]$ echo $ORACLE_SID

ocpone

[oracle@localhost ~]$ sqlplus /nolog

SQL*Plus: Release 10.2.0.1.0 - Production on Fri Sep 18 20:07:54 2015

Copyright (c) 1982, 2005, Oracle. All rights reserved.

SQL> connect / as sysdba

Connected to an idle instance.

SQL> startup nomount

ORACLE instance started.

Total System Global Area 608174080 bytes

Fixed Size 1220820 bytes

Variable Size 184553260 bytes

Database Buffers 415236096 bytes

Redo Buffers 7163904 bytes

#查看有关undo的参数

SQL> show parameter undo

NAME TYPE VALUE

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

undo_management string AUTO

undo_retention integer 900

undo_tablespace string UNDO01

#切换到mount状态

SQL> alter database mount;

Database altered.

#查看数据文件

SQL> select name from v$datafile;

NAME

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

/u01/app/oracle/oradata/ocpone/system01.dbf

/u01/app/oracle/oradata/ocpone/sysaux01.dbf

/u01/app/oracle/oradata/ocpone/undo01.dbf

/u01/app/oracle/oradata/ocpone/tablespaceone01.dbf

#查看表空间

SQL> select name from v$tablespace;

NAME

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

SYSTEM

SYSAUX

TEMP

UNDO01

TABLESPACEONE

切换到OPEN状态

SQL> alter database open;

Database altered.

启动正常

SQL>

SQL> select * from v$pwfile_users;

USERNAME SYSDB SYSOP

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

SYS TRUE TRUE

#接下来就是建立数据字典视图 [必须以sys用户执行一下命令 ]

SQL〉@$ORACLE_HOME/rdbms/admin/catalog.sql

............

PL/SQL procedure successfully completed.

SQL> select status from v$instance;

STATUS

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

OPEN

#建好后sys和system用户都没有表空间

#重启数据库后发现错误,查看oracle日志

报错:

rrors in file /u01/app/oracle/admin/ocpone/udump/ocpone_ora_20956.trc:

ORA-00704: bootstrap process failure

ORA-39700: database must be opened with UPGRADE option

参考文档:

Oracle 9i,10g,11g各自alert日志的位置
http://www.blog.chinaunix.net/uid-26446098-id-3289813.html
//---------------------------------------------------------------------//

SQL> select * from v$version; (查看一下版本)

SQL> show parameter dump;(查看一下dump)

NAME TYPE VALUE

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

background_core_dump string partial

background_dump_dest string /ora/OraHome/admin/oracle9i/bd

ump

core_dump_dest string /ora/OraHome/admin/oracle9i/cd

ump

max_dump_file_size string UNLIMITED

shadow_core_dump string partial

user_dump_dest string /ora/OraHome/admin/oracle9i/ud

ump

10g和9i的alert日志文件都在/ora/OraHome/admin/oracleXX/bdump中

//---------------------------------------------------------------------//

#oracle 10 linux系统上的日志位置:

/u01/app/oracle/admin/ocpone/bdump/alert_&"SID".log

#测试数据库的日志位置:

/u01/app/oracle/admin/ocpone/bdump/alert_ocpone.log

找到日志/u01/app/oracle/admin/ocpone/bdump/alert_ocpone.log

根据日志提示错误原因查找解决方法。

参考内容:

ORA-39700: database must be opened with UPGRADE option
http://iquicksandi.blog.163.com/blog/static/132285262201074103341411/
主要原因是升级以后数据字典的一些基表的内容修改了。

catalog.sql和catproc.sql这2个脚本需要在运行一下把数据字典视图在更新一下。

解决方法:使用startup upgrade启动。

[oracle@localhost /]$ sqlplus /nolog

SQL> connect / as sysdba

SQL>startup upgrade

#分别执行下面的脚本

SQL>@$ORACLE_HOME/rdbms/admin/catupgrd.sql;

SQL>@$ORACLE_HOME/rdbms/admin/catalog.sql

SQL>@$ORACLE_HOME/rdbms/admin/catproc.sql

Package body created.

PL/SQL procedure successfully completed.

手工创建Oracle数据库
http://www.linuxidc.com/Linux/2013-05/84927.htm
#也有文章说要执行pupbld.sql脚本

SQL>@$ORACLE_HOME/sqlplus/admin/pupbld.sql

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

#启动数据库

SQL> startup

ORACLE instance started.

Total System Global Area 608174080 bytes

Fixed Size 1220820 bytes

Variable Size 184553260 bytes

Database Buffers 415236096 bytes

Redo Buffers 7163904 bytes

Database mounted.

Database opened.

SQL>

SQL> quit

Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production

With the Partitioning, OLAP and Data Mining options

#启动监听

[oracle@localhost ~]$ lsnrctl start

LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 18-SEP-2015 20:57:34

Copyright (c) 1991, 2005, Oracle. All rights reserved.

Starting /u01/app/oracle/product/10.2.0/db_1/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version 10.2.0.1.0 - Production

System parameter file is /u01/app/oracle/product/10.2.0/db_1/network/admin/listener.ora

Log messages written to /u01/app/oracle/product/10.2.0/db_1/network/log/listener.log

Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1)))

Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost.localdomain)(PORT=1521)))

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))

STATUS of the LISTENER

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

Alias LISTENER

Version TNSLSNR for Linux: Version 10.2.0.1.0 - Production

Start Date 18-SEP-2015 20:57:37

Uptime 0 days 0 hr. 0 min. 0 sec

Trace Level off

Security ON: Local OS Authentication

SNMP OFF

Listener Parameter File /u01/app/oracle/product/10.2.0/db_1/network/admin/listener.ora

Listener Log File /u01/app/oracle/product/10.2.0/db_1/network/log/listener.log

Listening Endpoints Summary...

(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1)))

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost.localdomain)(PORT=1521)))

Services Summary...

Service "PLSExtProc" has 1 instance(s).

Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...

The command completed successfully

创建EM控制器

Oracle OEM 重建
http://www.linuxidc.com/Linux/2011-09/43898.htm
如何重新配置Oracle的EM Database Control
http://itlab.idcquan.com/Oracle/install/741456.html
[oracle@localhost ~]$ emctl start EM Configuration issue

TZ set to US/Pacific

Unable to determine console port. /u01/app/oracle/product/10.2.0/db_1/sysman/j2ee/config/emd-web-site.xml not found. No such file or directory

[oracle@localhost ~]$

[oracle@localhost ~]$ emca -config dbcontrol db -repos recreate

STARTED EMCA at Sep 18, 2015 8:59:24 PM

EM Configuration Assistant, Version 10.2.0.1.0 Production

Copyright (c) 2003, 2005, Oracle. All rights reserved.

Enter the following information:

Database SID: ocpone

Listener port number: 1521

Password for SYS user:

Password for DBSNMP user:

Invalid username/password.

Password for DBSNMP user:

Invalid username/password.

Password for DBSNMP user:

#忘记密码了,应该说从没有设置过。退出重设DBSNMP的密码。

[oracle@localhost ~]$

#DNSNMP的密码不能与SYS相同。

SQL> alter user DBSNMP identified by '密码' account unlock;

User altered.

SQL>

#EM还要用SYSMAN用户,没有这个用户,只好新建一个

SQL> alter user SYSMAN identified by welcome3 account unlock;

alter user SYSMAN identified by welcome3 account unlock

*

ERROR at line 1:

ORA-01918: user 'SYSMAN' does not exist

SQL> create user SYSMAN

2 identified by welcome3

3 default tablespace SYSAUX

4 temporary tablespace temp

5 account unlock;

User created.

SQL>

#因为以前没有EM管理器,所以要创建新的EM。不是重建。

[oracle@localhost ~]$ emca -config dbcontrol db -repos create

STARTED EMCA at Sep 18, 2015 9:36:35 PM

EM Configuration Assistant, Version 10.2.0.1.0 Production

Copyright (c) 2003, 2005, Oracle. All rights reserved.

Enter the following information:

Database SID: ocpone

Listener port number: 1521

Password for SYS user:

Password for DBSNMP user:

Password for SYSMAN user:

Email address for notifications (optional): localhost@ocpone.com

Outgoing Mail (SMTP) server for notifications (optional):

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

You have specified the following settings

Database ORACLE_HOME ................ /u01/app/oracle/product/10.2.0/db_1

Database hostname ................ localhost.localdomain

Listener port number ................ 1521

Database SID ................ ocpone

Email address for notifications ............... localhost@ocpone.com

Outgoing Mail (SMTP) server for notifications ...............

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

Do you wish to continue? [yes(Y)/no(N)]: yes

Sep 18, 2015 9:37:12 PM oracle.sysman.emcp.EMConfig perform

INFO: This operation is being logged at /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/emca/ocpone/emca_2015-09-18_09-36-35-PM.log.

Sep 18, 2015 9:37:14 PM oracle.sysman.emcp.EMReposConfig createRepository

INFO: Creating the EM repository (this may take a while) ...

Sep 18, 2015 9:42:09 PM oracle.sysman.emcp.EMReposConfig invoke

INFO: Repository successfully created

Sep 18, 2015 9:42:16 PM oracle.sysman.emcp.util.DBControlUtil startOMS

INFO: Starting Database Control (this may take a while) ...

Sep 18, 2015 9:43:56 PM oracle.sysman.emcp.EMDBPostConfig performConfiguration

INFO: Database Control started successfully

Sep 18, 2015 9:43:56 PM oracle.sysman.emcp.EMDBPostConfig performConfiguration

INFO: >>>>>>>>>>> The Database Control URL is http://localhost.localdomain:5501/em <<<<<<<<<<<

Enterprise Manager configuration completed successfully

FINISHED EMCA at Sep 18, 2015 9:43:56 PM

[oracle@localhost ~]$

[oracle@localhost ~]$ emctl status dbconsole

TZ set to US/Pacific

Oracle Enterprise Manager 10g Database Control Release 10.2.0.1.0

Copyright (c) 1996, 2005 Oracle Corporation. All rights reserved.
http://localhost.localdomain:5501/em/console/aboutApplication
Oracle Enterprise Manager 10g is running.

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

Logs are generated in directory /u01/app/oracle/product/10.2.0/db_1/localhost.localdomain_ocpone/sysman/log

[oracle@localhost ~]$

先设置ORACLE_SID环境变量后,启动EM console服务 ­

emctl start dbconsole

先设置ORACLE_SID环境变量后,停止EM console服务 ­

emctl stop dbconsole

先设置ORACLE_SID环境变量后,查看EM console服务的状态 ­

emctl status dbconsole

——终于完成了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: