程序员开发实例大全宝库

网站首页 > 编程文章 正文

超详细的oracle手动建库和数据库管理 可以当做备忘!

zazugpt 2024-09-02 04:30:41 编程文章 23 ℃ 0 评论

关于创建数据库

在你仅仅只安装了oracle软件,没创建数据库或想在主机上创建一个新的数据库,或者创建一个数据库的拷贝(克隆)时。你可以使用DBCA或create database SQL语句来进行数据库的创建在创建数据的时候需要有详细的计划,下面列出来一些推荐措施:

1.估计数据块和索引所需求的空间大小

2.计划使用的存储方式,是否可以将放置redo和数据文件到不同的磁盘上,以及FRA和数据文件位置。要大大简化这个规划任务,可以考虑使用OMF和ASM。

3.选择好全局数据库名。这个名称由DB_NAME和DB_DOMAIN确定

4.选择数据库标准块大小。由初始化参数DB_BLOCK_SIZE参数控制,在创建数据库后不能变更。SYSTEM和大多数表空间使用标准块大小,你也可以在创建表空间的时候指定使用非标准块大小

5.确定存储redo file的磁盘扇区是否是4K,redo日志在创建的时候默认使用的4K 块大小来创建。来决定是否要变更块大小。


使用DBCA创建数据库

DBCA是创建数据库的最好方式,在使用的时候可以自动的完成数据库的一些基本配置。DBCA可以作为一个独立工具,以OUI图形化界面来启动。当然你也可以使用DBCA在静默模式或交互模式来创建和配置数据库。

例如:

dbca -silent -createDatabase -templateName General_Purpose.dbc -gdbname ora11g -sid ora11g -responseFile NO_VALUE -characterSet AL32UTF8 -memoryPercentage 30 -emConfiguration LOCAL

如果想完全的静默,不交互的话,你需要使用响应文件,在其中指定相关用户的密码。你可以使用 dbca –help 查看命令帮助。响应文件可以参考模板,其位置一般在$ORACLE_HOME/assistants/dbca/dbca.rsp


使用 CREATE DATABASE 命令创建数据库

Create database是完全手动的方式创建数据库。在某些场景中,你需要使用脚本创建数据库的时候,使用create 命令创建比DBCA创建更合适。

步骤1:指定实例名和环境变量

在shell环境中是export ORACLE_SID=hwb

在windows 操作系统中是 set ORACLE_SID=hwb

在大多数平台,ORACLE_SID和ORACLE_HOME必须设置,PATH中必须包含$ORACLE_HOME/bin。

步骤2:选择数据库管理员认证模式

一般有2种认证方式:密码文件和操作系统认证。如果使用密码文件认证,那么需要创建密码文件。操作系统认证,需要保证登录的用户是使用操作系统用户组的用户。

创建密码文件使用orapwd命令。其语法为:

ORAPWD FILE=filename [ENTRIES=numusers] [FORCE={Y|N}] [IGNORECASE={Y|N}]

例如:

orapwd file=$ORACLE_HOME/dbs/orapwdbdao password=oracle entries=10

步骤3:创建 初始化参数文件命名格式

unix和linux是orapwORACLE_SID,在windows 中是PWDORACLE_SID,存放位置默认分别在ORACLE_/dbs和ORACLE_HOME\database

手动创建的参数文件,至少包含DB_NAME,CONTROL_FILES,MEMORY_TARGET参数。

为了方便起见,创建参数文件的时候可以放置到默认位置($ORACLE_HOME/dbs),使用默认的命名格式initORACLE_SID,这样启动的时候就不用额外的指定pfile选项。因为数据库会自动寻找,并使用参数文件。

在windows平台上,需要使用oradim命令来创建一个windos服务来创建实例:

oradim -NEW -SID sid -STARTMODE MANUAL -PFILE pfile

这个命令将创建实例,但是不会启动,因为服务被设置为手动,如果设置为AUTO,将自动启动实例,mount数据库。

步骤4:连接到实例,并创建spile。

使用本地认证模式登录到实例并创建spfile,例如:

sqlplus / as sysdba
create spfile from pfile;

注意:必须重启数据库实例才能使用spfile。如果在CREATE DATABASE中准备采用OMF,但是在pfile中未指定CONTROL_FILES,那么必须创建spfile,并使用spfile启动实例。

步骤5:启动实例

Startup nomount

如果参数文件在默认的位置,会自动的使用参数文件,不需要pfile字句。

步骤6:使用CREATE DATABASE 语句创建数据库

例如:

CREATE DATABASE ORCL
USER SYS IDENTIFIED BY oracle
 
USER SYSTEM IDENTIFIED BY oracle
 
LOGFILE GROUP 1 ('/u01/app/oracle/oradata/orcl/redo01.log') SIZE 100M,
 
GROUP 2 ('/u01/app/oracle/oradata/orcl/redo02.log') SIZE 100M,
 
GROUP 3 ('/u01/app/oracle/oradata/orcl/redo03.log') SIZE 100M
 
MAXLOGFILES 5
 
MAXLOGMEMBERS 5
 
MAXLOGHISTORY 1
 
MAXDATAFILES 100
 
CHARACTER SET AL32UTF8
 
NATIONAL CHARACTER SET AL16UTF16
 
EXTENT MANAGEMENT LOCAL
 
DATAFILE '/u01/app/oracle/oradata/orcl/system01.dbf' SIZE 325M REUSE
 
SYSAUX DATAFILE '/u01/app/oracle/oradata/orcl/sysaux01.dbf' SIZE 325M REUSE
 
DEFAULT TABLESPACE users
 
DATAFILE '/u01/app/oracle/oradata/orcl/users01.dbf'
 
SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
 
DEFAULT TEMPORARY TABLESPACE tempts1
 
TEMPFILE '/u01/app/oracle/oradata/orcl/temp01.dbf'
 
SIZE 20M REUSE
 
UNDO TABLESPACE undotbs
 
DATAFILE '/u01/app/oracle/oradata/orcl/undotbs01.dbf'
 
SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;

步骤7:运行脚本创建数据字典视图(dbdao.com oracle 11g OCM培训)

使用sysdba权限运行下列脚本:

@?/rdbms/admin/catalog.sql
@?/rdbms/admin/catproc.sql
@?/rdbms/admin/utlrp.sql

然后使用system 用户运行:

@?/sqlplus/admin/pupbld.sql

catalog.sql脚本创建数据字典表,动态性能视图,和这些视图的同义词,并将这些同义词赋予PUBILC访问。

catproc.sql 运行PL/SQL所必需的所有脚本

utlrp.sql 编译无效对象

pupbld.sql 让SQL*PLUS能够禁用一些用户命令。仅仅是限制使用sqlplu客户端工具有关功能。

到此数据库就创建完毕了。


文章略长,大家可以收藏,以后当做备忘!

后期会分享更多DBA的文章,感兴趣的朋友可以关注下!

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表