1.编辑pfile文件
*.control_files='+DATA'
*.db_block_size=8192
*.db_create_file_dest='+DATA'
*.db_files=4000
*.db_name='maxvmint'
*.db_recovery_file_dest='+FLASH'
*.db_recovery_file_dest_size=5368709120
*.fast_start_mttr_target=300
*.memory_target=10737418240
*.open_cursors=20000
*.processes=4000
*.resource_manager_plan=''
*.sec_case_sensitive_logon=FALSE
*.session_cached_cursors=1000
*.sessions=4405
*.undo_management='AUTO'
*.undo_retention=36000
*.undo_tablespace='UNDOTBS1'
*.sga_target=300M
2.创建密码文件
orapwd file=/***/**app/oracle/product/11.2.0/db/dbs/orapwd(instance_name).ora password=oracle
3.明确sid,然后启动到nomount状态。
export ORACLE_SID=test
startup nomount pfile='pfile文件路径"。
PS:
我在做这个过程中遇到了一些关于memory_target memory_max_target的问题,会报错ORA-00845,系统不支持。
官网的解释是这个两个参数的大小不应该超过/dev/shm的大小.
df -h | grep shm (查看交换分区的大小)
tmpfs 32G 12G 21G 36% /dev/shm
alter system set memory_max_target=15G scope=spfile;
这个例子就是说不能超过21G的大小。 解决了之后正常启动到nomount状态。
3.开始创建数据库:
CREATE DATABASE test
DATAFILE '+DATA' SIZE 300M AUTOEXTEND ON NEXT 10M EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE '+DATA' SIZE 150M
UNDO TABLESPACE UNDOTBS1 DATAFILE '+DATA' SIZE 100M
DEFAULT TEMPORARY TABLESPACE TEMPTABLS1 TEMPFILE '+DATA' SIZE 100M
LOGFILE
GROUP 1 ('+DATA') SIZE 100M,
GROUP 2 ('+DATA') SIZE 100M,
GROUP 3 ('+DATA') SIZE 100M;
PS: 这里用到+DATA ,跟普通的后面写的不一样,不是‘+/....dbf’.
这里要说的是有ASM磁盘组的安装问题。
SQL> show parameter db_create_file_dest
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_create_file_dest string +DATA
这个说明创建文件的时候都创建到ASM里面。所以说安装的时候 一般是先ASM环境搭建好,然后再创建数据库。使得两者能够有序的关联。
如果数据库创建好之后,在ASM 里面的+DATA/下面会自动生成根据实例名命名的文件目录。包括control datafile等。
SQL> desc v$asm_client
Name Null? Type
----------------------------------------------------------------------------------- -------- --------------------------------------------------------
GROUP_NUMBER NUMBER
INSTANCE_NAME VARCHAR2(64)
DB_NAME VARCHAR2(8)
STATUS VARCHAR2(12)
SOFTWARE_VERSION VARCHAR2(60)
COMPATIBLE_VERSION VARCHAR2(60)
SQL> select * from v$asm_client 会看到不同数据库和ASM 之间的对应关系。(如果一个机器上有多个数据库的话).
4.创建数据库成功后,跑几个脚本。
1.$ORACLE_HOME/rdbms/admin/catalog.sql
2.$ORACLE_HOME/rdbms/admin/catproc.sql
之后用system/manager 连接进去,再跑一个脚本结束.
$ORACLE_HOME/sqlplus/admin/pupbld.sql
至此安装完毕。
只有为了让开发等其它部门人员连入,需要配置监听 在tnsname.ora里面配置相关IP解析.不再详述。
二. 为了避免后期不停的给表空间扩容。要求使用bigfile做表空间数据文件。undo和temp表空间不使用。
1.ALTER DATABASE SET DEFAULT bigfile TABLESPACE;
2.SELECT * FROM database_properties WHERE property_name = 'DEFAULT_TBS_TYPE';
PROPERTY_NAME PROPERTY_VALUE DESCRIPTION
------------------------------ --------------- -------------------------
DEFAULT_TBS_TYPE BIGFILE Default tablespace type