AIOps 一场颠覆传统运维的盛筵
751
2022-10-12
如何手工创建(Create)一个Oracle 10g数据库
使用惯了dbca,差点忘记了如何手工创建数据库,今天被逼无奈,又用命令行创建了一次数据库。
记录一下过程。
1.首先要有一个参数文件,这个我利用了历史的参数文件
[oracle@dbstatsvr dbstat]$ sqlplus "/ as sysdba"SQL*Plus: Release 10.2.0.2.0 - Production on Thu Sep 17 18:21:20 2009Copyright (c) 1982, 2005, Oracle. All Rights Reserved.Connected to an idle instance.SQL> startup nomount;ORACLE instance started.Total System Global Area 1778384896 bytesFixed Size 1261332 bytesVariable Size 301990124 bytesDatabase Buffers 1459617792 bytesRedo Buffers 15515648 bytes
2.创建脚本,参考其他数据库,编写一个
SQL> create database dbstat 2 logfile group 1 ('/data1/dbstat/redo1.log') size 50M, 3 group 2 ('/data1/dbstat/redo2.log') size 50M, 4 group 3 ('/data1/dbstat/redo3.log') size 50M 5 character set ZHS16GBK 6 national character set utf8 7 datafile '/data1/dbstat/system.dbf' 8 size 500M autoextend on next 10M maxsize unlimited extent management local 12 sysaux datafile '/data1/dbstat/sysaux.dbf' 13 size 500M autoextend on next 10M maxsize unlimited 17 undo tablespace undotbs1 18 datafile '/data1/dbstat/undo.dbf' size 100M 20 default temporary tablespace temp 21 tempfile '/data1/dbstat/temp.dbf' size 100M;Database created.
3.在后台跑一跑其他脚本:
[oracle@dbstatsvr dbstat]$ nohup sqlplus "/ as sysdba" @?/rdbms/admin/catalog.sql &[1] 5399[oracle@dbstatsvr dbstat]$ nohup: appending output to `nohup.out'[oracle@dbstatsvr dbstat]$ [1]+ Stopped nohup sqlplus "/ as sysdba" @?/rdbms/admin/catalog.sql[oracle@dbstatsvr dbstat]$ [oracle@dbstatsvr dbstat]$ nohup sqlplus "/ as sysdba" @?/rdbms/admin/catproc.sql &[2] 5402[oracle@dbstatsvr dbstat]$ nohup: appending output to `nohup.out'
这样就基本上有了一个数据库的雏形了。
4.还有一个脚本要运行
这是数据库用普通用户登录会出现一个错误,提示以SYSTEM运行PUPBLD.SQL脚本:
SQL> connect sms/smsError accessing PRODUCT_USER_PROFILEWarning: Product user profile information not loaded!You may need to run PUPBLD.SQL as SYSTEMConnected.
这个脚本会创建一个表,用于限制用户执行某些特定的SQL*PLUS命令:
SQL> @?/sqlplus/admin/pupbld.sqlDROP SYNONYM PRODUCT_USER_PROFILE *ERROR at line 1:ORA-01434: private synonym to be dropped does not exist DATE_VALUE FROM PRODUCT_USER_PROFILE *ERROR at line 3:ORA-00942: table or view does not existDROP TABLE PRODUCT_USER_PROFILE *ERROR at line 1:ORA-00942: table or view does not existALTER TABLE SQLPLUS_PRODUCT_PROFILE ADD (LONG_VALUE LONG)*ERROR at line 1:ORA-00942: table or view does not existTable created.DROP TABLE PRODUCT_PROFILE *ERROR at line 1:ORA-00942: table or view does not existDROP VIEW PRODUCT_PRIVS*ERROR at line 1:ORA-00942: table or view does not existView created.Grant succeeded.DROP PUBLIC SYNONYM PRODUCT_PROFILE *ERROR at line 1:ORA-01432: public synonym to be dropped does not existSynonym created.DROP SYNONYM PRODUCT_USER_PROFILE *ERROR at line 1:ORA-01434: private synonym to be dropped does not existSynonym created.DROP PUBLIC SYNONYM PRODUCT_USER_PROFILE *ERROR at line 1:ORA-01432: public synonym to be dropped does not existSynonym created.SQL> connect sms/smsConnected.
发表评论
暂时没有评论,来抢沙发吧~