admin 管理员组

文章数量: 887006

1、下载 

2、安装 

3、选择 【创建并配置单实例数据库】 并 【下一步】

4、选择【服务器类】并【下一步】

5、选择【高级安装】并【下一步】

6、我这里选择 【企业版】 (按需配置)   并【下一步】

7、选择 【使用windows内置账号】 并【下一步】 弹框选择【是】

t

8、设置安装路径 并【下一步】  (建议选择磁盘可用内存大的)

9、选择【一般用途/事务处理】 并【下一步】

10、去掉 【创建为容器数据库】 并【下一步】

11、我这里直接【下一步】(按需配置)

12、我这里直接【下一步】(按需配置)

13、我这里直接【下一步】(按需配置)

14、选择【启用恢复】并【下一步】

15、选择【对所有账户使用相同口令】 设置密码  并【下一步】

16、等待安装

17、我这里直接【下一步】 (按需配置)

18、等待安装 (此过程会花费一些时间)

19、安装完成

20、开放端口1521 或者关闭防火墙  就可以连接了 
注意:有时会遇到 plsql 可以连接 但是启动项目却报错(ORA-28040: 没有匹配的验证协议或者ORA-01017: 用户名/口令无效; 登录被拒绝)

(1)如果报ORA-28040: 没有匹配的验证协议

请到  $ORACLE_HOME\network\admin  目录下 修改sqlnet.ora文件

SQLNET.ALLOWED_LOGON_VERSION_SERVER=8

SQLNET.ALLOWED_LOGON_VERSION_CLIENT=8

注意 SQLNET.ALLOWED_LOGON_VERSION=8 这个参数在12c已经废弃了 添加上面两个参数即可

然后重启   

参数说明:

ALLOWED_LOGON_VERSION_SERVER参数的值生成的密码版本客户要求的能力对客户的意义服务器以独占模式运行

12a

12C

O7L_MR

只有Oracle Database 12 c版本1(12.1.0.2或更高版本)客户端可以连接到服务器。

是的,因为它不同时使用密码版本10G11G密码版本。

12

11G, 12C

O5L_NP

Oracle Database 11 g第2版(11.2.0.3或更高版本)客户端可以连接到服务器。

较旧的客户端需要关键补丁更新CPUOct2012或更高版本,才能获得O5L_NP的功能。

只有已应用关键补丁更新的较旧的客户端才能连接到服务器。

是的,因为它不使用10G密码版本。

11

10G11G12C

O5L

使用Oracle Database 10 g及更高版本的客户端可以连接到服务器。

使用未使用关键补丁更新CPUOct2012或更高版本的Oracle数据库11.2.0.3之前的版本的客户端必须使用10G密码版本。

没有

10

10G11G12C

O5L

它与上一行具有相同的含义。

没有

9

10G11G12C

O4L

它与上一行具有相同的含义。

没有

8

10G11G12C

O3L

它与上一行具有相同的含义。

没有

值:

  • 12a适用于Oracle Database 12 c版本12.1.0.2或更高版本的身份验证协议(最严格的保护)

  • 12适用于Oracle Database 12 c版本12.1身份验证协议(默认和建议值)

  • 11适用于Oracle Database 11 g身份验证协议

  • 10适用于Oracle Database 10 g身份验证协议

  • 9用于Oracle9 i数据库认证协议

  • 8用于Oracle8 i数据库认证协议

(2)如果报ORA-01017: 用户名/口令无效; 登录被拒绝

修改密码: alter user 用户名 identified by 密码;

这样就可以解决了  

另外补充一下  SQLNET.AUTHENTICATION_SERVICES参数

 windows平台

对于windows平台 ,参数SQLNET.AUTHENTICATION_SERVICES 主要是以下几种情况:

    (1). sqlnet.ora文件为空,或用#注释掉              --密码文件验证通过,操作系统认证无法通过
    (2). SQLNET.AUTHENTICATION_SERVICES = (NTS)       --操作系统验证通过,密码文件认证也能通过
    (3). SQLNET.AUTHENTICATION_SERVICES = (NONE)      --密码文件验证通过,操作系统认证无法通过
    (4). SQLNET.AUTHENTICATION_SERVICES = (NONE,NTS)  --操作系统验证通过(前后顺序颠倒也一样),密码文件认证也能通过

(5).  SQLNET.AUTHENTICATION_SERVICES = (ALL)    --在windows下,该种为错误方式,会报

举个例子:

SQLNET.AUTHENTICATION_SERVICES = (NTS)

是操作系统验证,此时,sys这样登录:

SQL> conn /as sysdba
已连接到空闲例程。

SQLNET.AUTHENTICATION_SERVICES= (NONE)

是oracle密码验证,此时,sys这样登录:

SQL> conn sys/manager as sysdba
已连接到空闲例程。

SQLNET.AUTHENTICATION_SERVICES= (NONE,NTS)

两种都可以:

SQL> conn /as sysdba
已连接到空闲例程。
SQL> conn sys/manager as sysdba
已连接到空闲例程。
SQL>

Linux平台

默认情况下Unix/Linux下的sqlnet.ora文件是没有SQLNET.AUTHENTICATION_SERVICES参数的,此时是操作系统验证和Oracle密码验证并存。

加上SQLNET.AUTHENTICATION_SERVICES这个参数后,不管SQLNET.AUTHENTICATION_SERVICES设置为NONE还是NTS还是(NONE,NTS),都是基于Oracle密码验证。

总结

 (1) 该参数默认值为ALL,当通过DBCA建库时,该参数可能为NTS。

 (2) 在windows中,sqlnet.ora文件里默认会包含SQLNET.AUTHENTICATION_SERVICES参数,设置方式参见上述;但是在Linux中默认不包含SQLNET.AUTHENTICATION_SERVICES参数,所以我们刻意配置该参数也没有必要。
 (3)  SQLNET.AUTHENTICATION_SERVICES参数只会影响我们在数据库服务器本地登录管理员账号(sys),但是不会影响我们plsql登录数据库。

本文标签: 服务器 Windows Oracle19c