设为首页 收藏本站
查看: 1545|回复: 0

[经验分享] 手工创建数据库 ocp课程 wait for

[复制链接]

尚未签到

发表于 2015-6-16 11:43:30 | 显示全部楼层 |阅读模式
  手工创建数据库
1  创建实例
  1.1 修改cmd下面的sqlplus显示方式,显示连接的实例名
  进入C:\app\dell\product\11.2.0\dbhome_1\sqlplus\admin 修改glogin.sql,最后加上



set sqlprompt "_user'@'_connect_identifier>"
  或者修改本次回话的效果



sql>set sqlprompt _user"@"_connect_identifier>

  
  看看显示效果
DSC0000.png
DSC0001.png
  1.2 需要startup nomount,这个过程需要复制一个pfile(初始化参数),需要上面一个语句查看spfile的路径
  show parameter spfile(注意这里不要写成pamameter),看到在“C:\app\dell\product\11.2.0\dbhome_1\database”
DSC0002.png
  1.3 从现有的spfile创建一个pfile,pfile的文件名是INITncbeta(INIT+sid)
2  编辑初始化参数文件
  2.1通过windows的cmd下运行oradim -new - sid sen 创建实例
DSC0003.png
DSC0004.png
  2.2 将1.3的pfile里面的ncbeta全部替换为这里的sid sen,同时文件名改为INITsen
  改好之后,记得点击保存
DSC0005.png
  
3  创建相应的目录结构
  根据上面的sen的pfile创建各个sen文件夹
  *.audit_file_dest='C:\app\dell\admin\sen\adump'
*.control_files='C:\app\dell\oradata\sen\control01.ctl',
  'C:\app\dell\flash_recovery_area\sen\control02.ctl'

  图方便,直接复制的ncbeta的文件夹,但是之后记得把里面各个子文件夹里面的东西删除
DSC0006.png
  
4  创建口令验证文件 (C:\>orapwd file=d:\oracle\product\10.2.0\db_1\database\pwdbook.ora password=admin entries=1)
5  执行建数据库脚本
  5.1通过windows下set oracle_sid=sen ,之后sqlplus / as sysdba来启动oracle(nomount阶段)
  连接提示“已连接到空闲例程”,说明没有startup数据库
DSC0007.png
  5.2 可以startup
  5.3 拷贝一下代码(这里路径和dbf的文件夹名称任意)



Create database sen
datafile 'D:\sendb\system01.dbf' size 300M
sysaux datafile 'D:\sendb\sysaux01.dbf'size 120M
default temporary tablespace temp tempfile 'D:\sendb\temp01.dbf' size 20M  
undo tablespace UNDOTBS1 datafile 'D:\sendb\undotbs01.dbf' size 200M
logfile
group 1 ('D:\sendb\redo01.log') size 10240K,
group 2 ('D:\sendb\redo02.log') size 10240K,
group 3 ('D:\sendb\redo03.log') size 10240K
;
  人品爆发,这里一次性成功,昨天晚上n次失败
DSC0008.png
  上面创建之后,controlfile自动生成
DSC0009.png
  2013-01-24 16:17:32 更新
  使用dbca图形界面的方式建库的时候,可以选择em和归档等,并且在创建好之后,自动有了oradata\sid文件夹,里面有了系统数据文件和控制文件
   DSC00010.png
  5.4 终于发现了我为什么昨天上ocp课犯的错误了,目前oracle已经是startup阶段,可是我又startup了n次,每次都报错,并且是???
DSC00011.png
  5.5 win下看nls_lang发现是中文
DSC00012.png
  修改为美语
  SET NLS_LANG=AMERICAN
  当前会话的修改:



SYS@sen>alter session set nls_language="american";
  
  回话的修改:
DSC00013.png
  再来看startup的报错(可以看到在同一个窗口下再次进入)
DSC00014.png
  
6  创建数据字典视图(SQL>@?/RDBMS/ADMIN/catalog.sql) --@?  oracle主目录(C:\app\dell\product\11.2.0\dbhome_1)
  只有这一步了才能看到数据字典,比如desc user_tables,这里的?表示oracle home的路径
  我的有点小问题,等了好久鼠标还在上面的_identifier>,我于是就强行回车键了
DSC00015.png
  
7  创建oracle内部包(SQL>@?/RDBMS/ADMIN/catproc.sql)
  同上(导航上键来修改上步的)
  这一步要比上面耗时多了许多,大概7分钟样子。做了这部之后,可以
  SYS@nc3>desc dba_data_files;
DSC00016.png
  
8  SQL>@d:\oracle\product\10.2.0\db_1\sqlplus\admin\pupbld.sql (system)
DSC00017.png
  这里是scott连接,权限不足,换成sysdba,又错,必须是system来搞这一步(老师提示了,上面)
  搞定了
DSC00018.png
  
9  SQL>create spfile from pfile;
10  配置监听和服务名(NetManager)
  10.1没有配置之前不可以通过sqlplus /@sen as sysdba登陆
DSC00019.png
  10.2 通过net manager配置的时候,服务命名那里需要scott测试,通过sql建立scott
  还是在那个rdbms的admin下
DSC00020.png
  下图有unlock用户同时修改密码
DSC00021.png
  提示缺少PRODUCT_USER_PROFILE,在第8步
  配置好net manager的服务器名之后
DSC00022.png
DSC00023.png
  但此时cmd下面sqlplus /@sen as sysdba会提示ORA-12154 TNS错误
DSC00024.png
  然后lsnrctl status 发现监听只有一个ncbeta,配置的sen根本没有,想到了重启
  lsnrctl stop lsnrctl start 之后果然sen来了
DSC00025.png
  之后还是不行,百度找到了这个文章http://blog.iyunv.com/wh62592855/article/details/4654024
  ERROR:
ORA-12154: TNS: 无法解析指定的连接标识符
这里的提示信息是无法解析连接描述符,表示连接标识符,也就是tnsnname和你本地的tnsname.ora
里配置的不一致,连接时,请求tnsname描述符,但是更不就找不到,这样就会出现这样的错误,
检查我们配置的tnsname文件
  我看到我的tnsname配置好像真的和之前的不一样:
  
ISEN =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = sen)
    )
  )
  这个产生的原因是net manager配置的服务命名
DSC00026.png
  我把开头的I去掉,重新以下连结,报错变了
DSC00027.png
  还是看了上面的文章:一句话,要先startup之后监听才能和当前实例配合,才能用sqlplus /@sen as sysdba
DSC00028.png
  ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
这里的错误信息也描述的很清楚了,无法识别连接描述符里请求的服务。什么是连接描述符,不就是我们这里一直再提的tnsname
的配置么,这个tnsname配置里的服务名无法识别,很显然这里的错误信息告诉我们两个重要信息。
1. 已经和tnsname里描述中的服务器进行到了连接
2. 连接中tnsname里的service_name并不能在连接中的服务器上找到。
确实这里写着监听程序不支持服务
这句话是什么意思了,由于我的janes这个服务器,都没有启动数据库实例,所以没有一个实例存在在这个监听上,有就出现了这样的提示信息了,其实就是指
的监听现在没有一个数据库实例进行了注册,这里我们要先明白一个动态注册和静态注册的概念,对于9i或者以上的版本,数据库实例启动的时候nomount
这个状态,数据库就会把自己service_name注册到监听里,这个是动态注册,有时可以alter system
register动态注册。静态注册就是通过listener.ora文件,把需要注册的数据库的服务名注册到监听里。
这个具体的一些知识,在别的文章

11  配置dbconsole(dbsnmp,sys)(EMCA)
倪同学给的
  先修改sys,dbsnmp的密码
    conn / as sysdba
    alter user sys identified by admin;
    alter user dbsnmp account unlock identified by admin;
  c:\>emca -config dbcontrol db -repos create(这个要是不输入的话会一直让输入sysman密码,why?)
     SID:demo
     端口号:1521
     sys密码:admin
     dbsnmp密码:admin
     sysman密码:admin(密码是随机输入的)
     是否继续:Y
等待配置结束会有一个网址
DSC00029.png
  这是日志:
  配置: 未设置参数 DB_UNIQUE_NAME 的值。
2012-12-7 13:21:35 oracle.sysman.emcp.DatabaseChecks getDbUniqueName
配置: No Database unique name available. Will try to retrieve it from DB itself
2012-12-7 13:21:35 oracle.sysman.emcp.ParamsManager setParam
配置: Setting param: DB_UNIQUE_NAME value: sen
2012-12-7 13:21:35 oracle.sysman.emcp.ParamsManager getParam
配置: 未设置参数 DB_DOMAIN 的值。
2012-12-7 13:21:35 oracle.sysman.emcp.DatabaseChecks getDbDomain
配置: No db domain available. Will query db for db_domain parameter
2012-12-7 13:21:35 oracle.sysman.emcp.ParamsManager setParam
配置: Setting param: DB_UNIQUE_NAME value: sen
2012-12-7 13:21:35 oracle.sysman.emcp.ParamsManager setParam
配置: Setting param: SERVICE_NAME value: sen
2012-12-7 13:21:35 oracle.sysman.emcp.ParamsManager getParam
配置: 未设置参数 MODIFY_SID 的值。
2012-12-7 13:21:35 oracle.sysman.emcp.ParamsManager getParam
配置: 未设置参数 DBID 的值。
  2012-12-10 更新
  1 ,alter database datafile ''D:\sendb\sysaux01.dbf'' resize 300m;
   2, 清除em相关配置 --删除db配置 emca -deconfig dbcontrol db
  3,清除repository emca -repos drop
  4,配置em --创建db control emca -config dbcontrol db -repos create
  
DSC00030.jpg
  10g 非归档模式 手工建库pfile参考:



nc3.__db_cache_size=209715200
nc3.__java_pool_size=4194304
nc3.__large_pool_size=4194304
nc3.__shared_pool_size=71303168
nc3.__streams_pool_size=0
*.audit_file_dest='C:\oracle\product\10.2.0/admin/nc3/adump'
*.background_dump_dest='C:\oracle\product\10.2.0/admin/nc3/bdump'
*.compatible='10.2.0.1.0'
*.control_files='C:\oracle\product\10.2.0/oradata/nc3/\control01.ctl','C:\oracle\product\10.2.0/oradata/nc3/\control02.ctl','C:\oracle\product\10.2.0/oradata/nc3/\control03.ctl'
*.core_dump_dest='C:\oracle\product\10.2.0/admin/nc3/cdump'
*.db_block_size=8192
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='nc3'
*.db_recovery_file_dest='C:\oracle\product\10.2.0/flash_recovery_area'
*.db_recovery_file_dest_size=2147483648
*.dispatchers='(PROTOCOL=TCP) (SERVICE=nc3XDB)'
*.job_queue_processes=10
*.nls_language='SIMPLIFIED CHINESE'
*.nls_territory='CHINA'
*.open_cursors=300
*.pga_aggregate_target=96468992
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=290455552
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='C:\oracle\product\10.2.0/admin/nc3/udump'
  事实证明:上面的pfile+再上面的建库sql完美
DSC00031.jpg

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-77922-1-1.html 上篇帖子: OCP-052 & 053部分答案解析 下篇帖子: OCP:The Open-Closed Principle
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表