CentOS7安装Oracle11G完整版图文教程三(配置监听和网络服务)

一、配置监听及本地网络服务

1、在oracle用户的图形界面oracle用户中,新开启一个终端,输入命令netca 会弹出如下界面。

img

2、创建监听服务(充当oracle服务器,让别的oracle客户端连接本oracle服务器)。

img

img

img

img

img

img

3、配置本地网络服务名(充当oracle客户端,连接别的oracle服务器)。

img

img

4、输入连接的oracle服务器的数据库的实例名。

img

img

5、输入oracle服务器的ip地址。

img

6、选中YES测试。

img

7、点击change Login 输入所连接oracle服务器的其中某一个用户名和密码(用户名oracle和设置的密码),点击OK。

img

8、看到此界面说明测试成功(如果不成功,请查看网络是否畅通,所连接的oracle服务器是否启动,监听是否启动等原因)。

img

9、为你所设置的本地网络服务名起个名字。

img

img

img

**至此、oracle服务器安装配置基本就完成了。如果没有错误中断的话oracle已经完成安装配置,并且端口已经监听,可以使用命令登录测试(最好切换到Oracle用户后执行命令)。

二:登录测试

[root@oracledb ~] sqlplus / as sysdba
Enter user-name: sys
Enter password:
ERROR:
ORA-01017: invalid username/password; logon denied # 如果出现该报错,请替换用户名
Enter user-name: sys as sysdba
Enter password:

SQL> select * from v$version;

BANNER
——————————————————————————–
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 – 64bit Production
# 可查询版本号等进行测试是否正常执行命令。oracle启动监听命令:
[root@oracledb ~] lsnrctl start

# 注:root用户下可能并没有sqlplus 和lsnrctl 命令,如果经常使用root管理服务器,可以将这两个命令软连接到/usr/bin下面。

# 添加软连接
[root@oracledb ~] ln -s /ora/oracle/product/11.2.0/db_1/bin/lsnrctl /usr/bin
[root@oracledb ~] ln -s /ora/oracle/product/11.2.0/db_1/bin/sqlplus /usr/bin
# 注:在安装的时候配置oracle用户的密码最好要复杂一些,以免被破解登录,另外也可以将oracle用户添加到禁止SSH登录的名单中,通过其他用户登录到服务器切换到oracle用户。

# 禁止oracle用户通过ssh登录:
[root@oracledb ~] vim /etc/ssh/sshd_config
DenyUsers oracle

注意事项:

# 1、Linux oracle数据库listener.ora存放路径
cd /home/oracle/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora

# 2、Linux oracle数据库tnsnames.ora存放路径
cd /home/oracle/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora

# 3、ORACLE启动监听器
# (1)切换至oracle安装用户(一般为oracle)
su – oracle

# (2)启动监听器
lsnrctl start

# (3)停止监听器
lsnrctl stop

# 4、启动测试oracle:
[oracle@oracle ~]sqlplus /nologsqlplus/nolog
SQL*Plus: Release 11.2.0.1.0 Production on Fri Jul 27 02:12:12 2012
Copyright (c) 1982, 2009, Oracle. All rights reserved.
SQL> quit
# 注:测试的另一种方法:找一台windows平台电脑,telnet oracle主机IP地址:1521,通的话,会出现一个黑屏,光标一闪一闪。

5、Linux开放1521端口允许网络连接Oracle Listener、症状:

(1)、TCP/IP连接是通的。可以用ping 命令测试。

(2)、服务器上Oracle Listener已经启动。

# 查看listener状态
lsnrctl status

# 启动Oracle listener
lsnrctl start

(3)、客户端得到的错误信息通常是:ORA-12170: TNS:连接超时;这时,我们基本可以肯定是服务器没有开放1521端口(假设你用默认设置)。解决方法:

# (1)假如你是在一个局域网环境,配置了防火墙。那么可以关闭Linux的防火墙。
sudo service iptables stop

# (2)编辑iptables, 开放1521端口:
sudo vi /etc/sysconfig/iptables
-A INPUT -p tcp -m state –state NEW -m tcp –dport 1521 -j ACCEPT
:wq

# 重启防火墙
sudo service iptables restart

# 保存配置,以便linux重启后依然有效
sudo service iptables save

# 查看防火墙规则:
sudo iptables -L –n

6、linux下创建oracle用户表空间;就是在已有的数据库实例上创建一个新的帐号,访问一些新的表。操作步骤如下:

# (1)登录linux,以oracle用户登录(如果是root用户登录的,登录后用 su – oracle命令切换成oracle用户)
# (2)以sysdba方式来打开sqlplus,命令如下: sqlplus “/as sysdba”
# (3)查看我们常规将用户表空间放置位置:执行如下sql:
select name from vdatafile

# (4)创建用户表空间:
CREATE TABLESPACE NOTIFYDB DATAFILE ‘/home/oracle/app/oradata/orcl/scsdb.dbf’ SIZE 200M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;

# (5)创建用户,指定密码和上边创建的用户表空间
CREATE USER scs IDENTIFIED BY scs DEFAULT TABLESPACE NOTIFYDB;

# (6)赋予权限
grant connect,resource to scs;
grant unlimited tablespace to scs;
grant create database link to scs;
grant select any sequence,create materialized view to scs;

经过以上操作,我们就可以使用scs/scs登录指定的实例,创建我们自己的表了。

推荐文章