• Windows C盘格式化或者同平台迁移oracle数据库


      我们知道如果是Linux 同平台迁移oracle数据库。只要是安全关闭了数据库,在新机器上创建用户组,配置了环境变量,将数据库安装目录拷贝到对应的目录就好用了。

    一直在寻求Windows平台上这类的解决方案。

      此次C盘格式化了,系统重装了,想借此机会试验下。百度了下之前有人这么做过,又是修改注册表,又是设置一堆变量的但是感觉有些繁琐。于是想到了Linux上的一些配置。开始在window上实验寻求最少依赖。

      1.添加ORACLE_HOME

      2.添加path路径 %ORACLE_HOME%BIN

      3.设置ORACLE_SID

         4.添加用户组ORA_DBA,将Administrator和system添加到ORA_DBA

    5.用sqlpus 试试

    6.默认可以用操作系统验证的呀

    # sqlnet.ora Network Configuration File: D:OracleBaseproduct11.2.0dbhome_1
    etworkadminsqlnet.ora
    # Generated by Oracle configuration tools.
    
    # This file is actually generated by netca. But if customers choose to 
    # install "Software Only", this file wont exist and without the native 
    # authentication, they will not be able to connect to the database on NT.
    
    SQLNET.AUTHENTICATION_SERVICES= (NTS)
    
    NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)

    7.找到之前的服务,查看启动了哪些应用

    8.在命令行执行该语句

    9.另起一个命令行窗口,重新运行SQLplus

    10.至此数据库启动可用了。

    11.想想每次这样启动比较麻烦,想着将起变成服务,于是就想到了oradim 命令

    oradim -NEW -SID ZEN -STARTMODE manual -SPFILE
    Instance created.
    DIM-00019: create service error
    O/S-Error: (OS 2) The system cannot find the file specified.
    
    Resulting service executable path is:
    orantinORACLE.EXE SYNCDB

    在cmd 窗口下设置了ORACLE_HOME,ORALCE_SID 不起作用?

    尝试过好多次,没办法,还是报这个错。

    12.换一种服务的注册方式?使用SC试试看

    注册成功了,启动服务也没报错,用sqlplus 链接试试?

    这会儿好像相差的更远了。

    13.转念一想,是不是注册表中指定的变量和环境变量设置的不一样?

    于是在注册表中添加oraclehome

    重新运行 oradim,这会儿没有报错

    14.查看服务创建好了,路径也是对的

    15.启动服务试试,仍旧没有启动实例

    16.重新创建一个实例来对比,发现是注册表中ORA_ZEN_AUTOSTART的值设置的有差异。

    将其设置为true就可以自动启动了。

  • 相关阅读:
    关于Blog的思考
    程序员应知——简单就是美
    关于知识分享和微软TechEd Roadshow
    在网络上营销你自己——兼《口碑》书评
    《与孩子一起学编程》书评
    两个要素:人和思考——《软件人才管理的艺术》书评
    程序员应知——也说重构
    《精通Android 2》书评
    oracle利用正则表达式提取字符串中的数字
    oracle 身份证校验函数
  • 原文地址:https://www.cnblogs.com/Alex-Zeng/p/5102477.html
Copyright © 2020-2023  润新知