Oracle 数据库启动流程

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/God_XiangYu/article/details/81014723

第四章:Oracle 数据库启动流程

4.1 oracle 的服务启动顺序

  • oracle 启动流程——windows 下

    (1)lsnrctl start (启动监听)

    (2)oradim—startu—sid 数据库实例名

  • oracle 启动流程——linux 下

    (1)lsnctl start(启动监听)

    (2)sqlplus sys/change_on_install as sysdba(以sysdba 身份登录,在oracle 10g 后可以这样写)

    sqlplus /nolog
    
    conn sys/change_on_install as sysdba
    

    (3)startup

4.2 oracle 认证方式

在客户端上两种方式成功登录 sqlplus

——> scott@orcl-->password(scott 的密码)

——> scott/密码@orcl
  • oracle 数据库有两个管理员

    sys:角色时dba 角色,拥有创建数据库的权限。

    system:operate 的校色,拥有除了创建数据库

  • oracle 安装过程中会设置ora_dba,oinstall 这两个组

    • 操作系统验证

      当oracle 服务器安装完毕之后,默认操作系统的 administrator 用户就进入了 ora_dba 组里面,因此在oracle 服务器端可以使用操作系统验证,

    例如:

    sql->conn  system/xxx(密码随意写) as sysdba
    
    sql->show user;
    #结果是sys 用户登录。
    
  • 打开 ora_dba组,把adminstrator 用户移除 ora_dba 组,使用 adminstrator

    例如:

    sql->conn  system/xxx(密码随意写) as sysdba
    
    #登录,发现登录不了。
    
  • Oracle 分为普通用户与特权用户

    • 普通用户:默认时使用数据库验证方式登录的(con system/HIS 不加as )
    • 特权用户:以操作系统认证方式验证(conn system/xxx as sysdba),dbms 如出现 as sysdba 则表示以特权用户登录,此时就不需要数据库方式验证了,也不验证密码了,直接切换为 sys 登录

    验证顺序:先验证特权用户,如果不在ora_dba 组里面,再验证普通用户。

    • 根据安全需求,能否设定不以操作系统验证让用户登录呢?

      找到oracle 的安装目录下的 sqlnet.ora 文件(一般存在与 network\admin目录下)

    例如:

    C:\app\adminstrator\product\11.2.0\dbhome_1\NETWORK\ADMIN 路径下打开监听文件sqlnet.ora文件
    
    将:SQLNET.AUTHENTICATION_SERVICES= (NTS) (NTS 默认为就是支持操作系统验证,将NTS改成NONE)
    

丢失管理员密码后如何解决?

  • 1、查看 pwd+ 实例名文件,例如pwdorcl (ora 就是实例名);

    • 例如:

    C:\app\administrator\product\11.2.0\dbhome_1\database

  • 2、把pwdorcl 做个备份;

  • 3、生成新的密码文件,在oracle 服务端 dos 窗口操作;

    例如:

    C:\Users\administrator> orapwd file=C:\app\administrator\product\11.2.0\dbhome_1\database\pwdorcl.ora passwpord=system entries=10
    
  • 4、重启实例,才能是新的密码生效

猜你喜欢

转载自blog.csdn.net/God_XiangYu/article/details/81014723
今日推荐