ITPub博客

首页 > 数据库 > Oracle > Oracle基础结构之手工建库相关

Oracle基础结构之手工建库相关

原创 Oracle 作者:luckyfriends 时间:2014-02-21 13:57:52 0 删除 编辑

文章版权所有Jusin Haoluckyfriends),支持原创,转载请注明。

手工建库可以理解oracle的启动关闭、实例、数据文件等概念,本文略去了dbca图形建库部分,重点演示了Windows和Linux下手工建库的主要步骤和命令

二、         Oracle建库相关:... 14

1                     DBCA建库

2                     手工建库

2.1 产生并编辑initSID.ora参数文件

2.2 手动创建数据库

2.3 安装数据库字典、系统包及过程

2.4安装客户资源集

2.5 配置监听

2.6创建临时表空间

2.7 配置dbconsole

2.8开始和停止isql*plus



二、Oracle建库相关:

1、 DBCA建库

2、 手工建库

手工建库的步骤:

1. 备份机器上现有的数据库;

2. 产生并编辑initSID.ora参数文件;

3. 验证所有的可能用到SQL文件,确认实例名是正确的;

4. 创建新数据库对应的实例(如果是windows操作系统要使用oradim);

5. 利用sqlplus工具以nomount方式启动实例;

6. 利用create database创建数据库;

7. 关闭数据库;

8. 备份数据库;

2.1 产生并编辑initSID.ora参数文件

例:创建实例名为test的参数文件inittest.ora

windows下参数文件放置在$ORACLE_HOME/database/inittest.ora

*NIX下参数文件放置在$ORACLE_HOME/dbs/inittest.ora

*.sga_target=612368384

*.instance_name=test

*.db_name='test'

*.control_files='f:\oracle\product\10.2.0\oradata\test\control01.ctl','f:\oracle\product\10.2.0\oradata\test\control02.ctl','f:\oracle\product\10.2.0\oradata\test\control03.ctl'

*.db_recovery_file_dest='f:\oracle\product\10.2.0/flash_recovery_area'

*.db_recovery_file_dest_size=2147483648

*.undo_management='AUTO'

*.undo_tablespace='UNDOTBS1'

*.background_dump_dest='f:\oracle\product\10.2.0/admin/test/bdump'

*.user_dump_dest='f:\oracle\product\10.2.0/admin/test/udump'

windows下创建实例:

oradim -new ------创建新实例选项

-sid test ------新实例的名称

-syspwd oracle -------指定超级用户的口令(sys)

startmode auto --------指定实例的启动模式

在windows下创建完实例后:1)在系统的服务将自动添加一个服务:OracleServicetest;2)并创建一个口令文件;3)在注册表中:Hkey_local_machine\software\ORACLE\key_OraDblog_home1

Hkey_local_machine\system\ControlSet001\Services

oradim –h 查看命令帮助及格式

例:C:\>oradim -new -sid test -syspwd oracle -startmode auto

实例已创建。

UNIX/Linux下创建实例:

创建初始化参数文件、口令文件后,即可export ORACLE_SID=test,然后startup nomount即可启动实例;

(注意,在oradim之前要设置好ORACLE_HOME否则创建服务的时候可能无法正确创建口令文件,然后导致sys连接的时候报ORA-12560: TNS: 协议适配器错误)

2.2 手动创建数据库

以nomount方式启动Oracle实例

创建数据库

安装数据字典

安装PL/SQL包以及过程

安装用户资源集

配置监听文件LISTENER.ORA

配置OEM

启动实例

c:\> set ORACLE_SID=test

c:\>sqlplus /nolog

SQL> conn / as sysdba

SQL> startup nomount

(注意参数文件中指定的bdump、udump文件要创建好对应的目录,否则就会报ORA-02778: Name given for the log directory is invalid)

创建数据库

create database test

logfile group 1 'F:\oracle\product\10.2.0\oradata\test\redo01.log' size 4M,

group 2 'F:\oracle\product\10.2.0\oradata\test\redo02.log' size 4M,

group 3 'F:\oracle\product\10.2.0\oradata\test\redo03.log' size 4M

datafile 'F:\oracle\product\10.2.0\oradata\test\system01.dbf' size 300m autoextend on next 10m maxsize unlimited

sysaux datafile 'F:\oracle\product\10.2.0\oradata\test\sysaux01.dbf' size 200m

undo tablespace undotbs1 datafile 'F:\oracle\product\10.2.0\oradata\test\undo01.dbf' size 50m

character set zhs16gbk;

SYS@test> select name,open_mode from v$database;

NAME OPEN_MODE

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

TEST READ WRITE

注意:system表空间至少240M、sysaux至少200M;

在创建数据库的过程中,创建了控制文件、数据文件、日志文件,自动创建了system/manager;

如果创建失败,需要重新创建的话,可能需要删除先前创建失败时已经生成的一些文件(如果有),无法删除的话可以关闭数据库及实例,删除后重新启动实例,然后创建数据库;

2.3 安装数据库字典、系统包及过程

SYS@test> @F:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\catalog.sql ---创建数据字典视图、同义词

SYS@test> @F:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\catproc.sql ---创建系统包、过程

2.4安装客户资源集

SYS@test> conn system/manager

SYSTEM@test> @F:\oracle\product\10.2.0\db_1\sqlplus\admin\pupbld.sql

这个脚本只能由system用户执行,与后面用户的授权有一定关系,用户资源集中包括dbsmp、sysman等其他用户的信息,包括这些用户登录信息、密码等以及使用资源 的限制等,如果不运行这个脚本,则后面配置dbconsole也无法进行;

2.5 配置监听

c:\> lsnrctl stop

c:\>lsnrctl start

客户端连接数据库以验证监听服务

修改tnsname.ora文件

TEST =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST =HAOHAO)(PORT = 1521))

(LOAD_BALANCE = yes)

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = test)

)

)

2.6创建临时表空间

SYSTEM@test> create temporary tablespace temp tempfile 'F:\oracle\product\10.2.0\oradata\test\temp01.dbf' size 20M;

SYSTEM@test> alter database default temporary tablespace temp;

2.7 配置dbconsole

配置dbconsole过程中会创建资料库,这期间会需要临时表空间(如用来排序)

C:\>emca -config dbcontrol db -repos create

EMCA 开始于 2013-1-24 20:59:23

EM Configuration Assistant 10.2.0.1.0 正式版

版权所有 (c) 2003, 2005, Oracle。保留所有权利。

输入以下信息:

数据库 SID: test

监听程序端口号: 1521

SYS 用户的口令:

DBSNMP 用户的口令:

SYSMAN 用户的口令:

通知的电子邮件地址 (可选):

通知的发件 (SMTP) 服务器 (可选):

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

已指定以下设置

数据库 ORACLE_HOME ................ f:\oracle\product\10.2.0\db_1

数据库主机名 ................ haohao.ufsoft.com.cn

监听程序端口号 ................ 1521

数据库 SID ................ test

通知的电子邮件地址 ...............

通知的发件 (SMTP) 服务器 ...............

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

是否继续? [yes(Y)/no(N)]: yes

2013-1-24 21:02:34 oracle.sysman.emcp.EMConfig perform

信息: 正在将此操作记录到 f:\oracle\product\10.2.0\db_1\cfgtoollogs\emca\test\emca_2013-01-24_08-59-22-下午.log。

2013-1-24 21:02:41 oracle.sysman.emcp.EMReposConfig createRepository

信息: 正在创建 EM 资料档案库 (此操作可能需要一段时间)...

2013-1-24 21:07:01 oracle.sysman.emcp.EMReposConfig invoke

信息: 已成功创建资料档案库

2013-1-24 21:07:22 oracle.sysman.emcp.util.DBControlUtil startOMS

信息: 正在启动 Database Control (此操作可能需要一段时间)...

2013-1-24 21:08:32 oracle.sysman.emcp.EMDBPostConfig performConfiguration

信息: 已成功启动 Database Control

2013-1-24 21:08:33 oracle.sysman.emcp.EMDBPostConfig performConfiguration

警告: 无法创建 Database Control 快捷方式

2013-1-24 21:08:34 oracle.sysman.emcp.EMDBPostConfig performConfiguration

信息: >>>>>>>>>>> Database Control URL 为 http://haohao.ufsoft.com.cn:5500/em <<<<<<<<<<<

已成功完成 Enterprise Manager 的配置

EMCA 结束于 2013-1-24 21:08:34

注意:当机器名改了以后可能需要重新配置db control(删除了原来的重建)

注意:

修改端口:c:\>emca –reconfig ports –dbcontrol_http_port 5501

F:\oracle\product\10.2.0\db_1\install\ portlist.ini端口信息

C:\>emca -config dbcontrol db -repos recreate

附其他解决方式.1,修改DBSNMP密码:

重新配置DBCONSOLE,需要输入DBSNMP密码,但任何密码都会显示错误,需要预先修改。

sql>alter user dbsnmp identified by xxx;

2,删除早期DBCONSOLE创建的用户:

sql>drop role MGMT_USER;

sql>drop user MGMT_VIEW cascade;

sql>drop user sysman cascade;

3,删除早期DBCONSOLE创建的对象:

sql>drop PUBLIC SYNONYM MGMT_TARGET_BLACKOUTS;

sql>drop public synonym SETEMVIEWUSERCONTEXT;

4,重新创建DBCONSOLE:(如果是在windows下,要先到注册表删除DBCONSOLE的服务,重启电脑)

$emca -config dbcontrol db -repos create

根据提示,先输入SID,再输入Y继续;

输入端口1521,输入SYS密码,输入DBSNMP密码,输入SYSMAN 密码,输入Y继续

完成。

5,检查状态 emctl status dbconsole。

附emca常用命令:

创建一个EM资料库

emca -repos create

重建一个EM资料库

emca -repos recreate

删除一个EM资料库

emca -repos drop

配置数据库的 Database Control

emca -config dbcontrol db

删除数据库的 Database Control配置

emca -deconfig dbcontrol db

重新配置db control的端口,默认端口在1158

emca -reconfig ports

emca -reconfig ports -dbcontrol_http_port 1160

emca -reconfig ports -agent_port 3940

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

emctl start dbconsole

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

emctl stop dbconsole

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

emctl status dbconsole

配置dbconsole的步骤

emca -repos create

emca -config dbcontrol db

emctl start dbconsole

重新配置dbconsole的步骤

emca -repos drop

emca -repos create

emca -config dbcontrol db

emctl start dbconsole

2.8开始和停止isql*plus

C:\>isqlplusctl start

iSQL*Plus 10.2.0.1.0

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

Starting iSQL*Plus ...

iSQL*Plus started.

C:\>isqlplusctl stop

iSQL*Plus 10.2.0.1.0

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

Stopping iSQL*Plus ...

iSQL*Plus stopped.

F:\oracle\product\10.2.0\db_1\oc4j\j2ee\isqlplus\application-deployments\isqlplus\ application.log日志

F:\oracle\product\10.2.0\db_1\oc4j\j2ee\isqlplus\config\ http-web-site.xml 配置文件修改端口

F:\oracle\product\10.2.0\db_1\install\ portlist.ini端口信息

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14710393/viewspace-1085517/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
个人博客网 www.leosunny 长期从事数据库相关工作,涉及oracle,mysql, sqlsever,db2 , OGG, SSIS以及非关系数据库和大数据平台等。 希望一直分享一些个人案例和知识,和广大技术宅们共同进步。

注册时间:2009-06-06

  • 博文量
    468
  • 访问量
    3160796