OCP 11g 第四章练习
练习 4-1 配置Oracle Net
在本练习中, 将使用图形化工具和命令行工具来建立一个完整的Oracle Net 环境. 由此, 读者可看出在Windows 和 Linux 系统中的区别.
1. 创建Oracle Net配置文件使用的目录, 并设置指向此位置的TNS_ADMIN变量. 目录的位置无关紧要, 只要Oracle 用户有权执行创建、读取和写入即可。
在Linux系统中:
mkdir /u01/oracle/net
export TNS_ADMIN=/u01/oracle/net
确保从现在开始,都从设置了变量的绘画中执行所有工作.
在Windows系统中:
mkdir d:\oracle\net
创建注册表项TNS_ADMIN, 并将其设置为Oracle Home分支的注册表中的字符串变量. 这通常是: HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb11g_home1
2. 通过从操作系统提示符中运行TNSPING命令来检查是否读取了变量:
tnsping orcl
由于TNS_ADMIN目录中不存在任何文件, 因此将返回错误"TNS-03505:Failed to resolve name". 在Windows系统中, 需要启动一个新命令提示符,从注册表找到TNS_ADMIN新值.
3. 启动Net Manager. 在Linux系统中, 从操作系统提示符中运行netmgr. 在Windows系统中, 从"开始"菜单启动它. Net Manager 窗口最上面的行将显示Oracle Net 文件的位置. 如果这不是新目录, 则TNS_ADMIN变量设置的不正确.
4. 创建新侦听器:战卡导航树的Local分支, 突出显示Listeners项,然后单击"+"图标.
5. 输入侦听器名"NEWLIST",然后单击OK按钮.
6. 单击Add Address 按钮.
7. 对于Address 1, 选择"TCP/IP" 作为协议, 并输入"127.0.0.1" 作为主机, "2521" 作为端口. 图4-11 显示了结果.
8. 创建信服务名: 突出显示导航树中的Service Naming项, 然后单击"+"图标.
9. 输入"NEW" 作为新服务名, 然后单击Next按钮.
10. 选择"TCP/IP"作为协议, 然后单击Next按钮.
11. 输入"127.0.0.1"作为主机名, "2521"作为端口, 然后单击Next按钮.
12. 输入"SERV1" 作为服务名,然后单击Next按钮.
13. 单击Finish按钮, 如果尝试进行测试,此时将失败, 图4-12显示了结果.
14. 通过单击File 和Save Network Configuration 菜单项保存配置. 这将在TNS_ADMIN目录中创建listener.ora文件和tnsnames.ora文件.
15. 使用编辑器检查这两个文件.
LISTENER.ORA文件如下:
NEWlIST=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=2521))
)
TNSNAMES.ora文件如下:
NEW =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=2521))
)
(CONNECT_DATA=
(SERVICE_NAME=SERV1)
)
)
16. 从操作系统提示符中使用 lsnrctl start newlist
17. 在操作系统提示符中使用tnsping new 测试连接字符串.
18. 使用sqlplus / as sysdba, 经操作系统身份验证连接到数据库, 忽略任何侦听器.
19. 为正在运行的实例设置service_names参数和local_listener参数(仅限于内存, 不在参数文件中设置), 冰箱新侦听器注册新服务名:
alter system set service_names=serv1 scope-memory;
alter system set local_listener=new scope=memory;
alter system register;
20. 在操作系统提示符下, 使用lsnrctl service newlist, 确认已向新侦听器注册了新服务.
21. 通过使用以下代码登录,确认新网络环境已生效:
sqlplus system/oracle@new
练习 4-2 设置共享的服务器环境
本练习是 练习[4-1]中步骤21的延续,用户需要配置共享服务器, 并证实其可以运行.
1. 设置dispatchers参数和shared_servers参数,并注册到侦听器, 命令如下.
alter system set dispatchers='(protocol=tcp)(dispatchers=2)' scope=memory;
alter system set shared_servers=4 scope=memory;
alter system register;
2. 通过查询视图V$PROCESS,确认调度程序和共享服务器已经启动. 查找名为 S000,S001,S002,S003,D000和D001的进程.
select program from v$process order by program;
3. 在操作系统提示符窗口,确认调度程序已经注册到侦听器.
lsnrctl services newlist
4. 通过侦听器进行连接, 并确认通过共享服务器机制执行了连接.
connect system/oracle@new ;
select d.name,s.name from v$dispatcher d, v$shared_server s , v$circuit c
where d.paddr= c.dispatcher and s.paddr=c.server;
此查询将显示会话连接到的调度程序, 以及执行查询的共享服务器进程.
5. 还原到最初的配置以清理环境
alter system set local_listener='' scope=memory;
alter system set service_names='' scope=memory;
alter system set dispatchers='' scope=memory;
alter system set shared_servers=0 scope=memory;
alter system register;
在操作系统提示符窗口, 使用 lsnrctl stop newlist 停止侦听器.
取消设置TNS_ADMIN变量, 在Linux系统中,采用 export TNS_ADMIN=''; 在Windows系统中,删除TNS_ADMIN注册表项.
OCP 11g 第四章练习的更多相关文章
- 【书评:Oracle查询优化改写】第四章
[书评:Oracle查询优化改写]第四章 BLOG文档结构图 一.1 导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ① check的 ...
- 《Django By Example》第四章 中文 翻译 (个人学习,渣翻)
书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:祝大家新年快乐,这次带来<D ...
- 《Linux内核设计与实现》读书笔记 第四章 进程调度
第四章进程调度 进程调度程序可看做在可运行太进程之间分配有限的处理器时间资源的内核子系统.调度程序是多任务操作系统的基础.通过调度程序的合理调度,系统资源才能最大限度地发挥作用,多进程才会有并发执行的 ...
- 《Entity Framework 6 Recipes》中文翻译系列 (20) -----第四章 ASP.NET MVC中使用实体框架之在MVC中构建一个CRUD示例
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 第四章 ASP.NET MVC中使用实体框架 ASP.NET是一个免费的Web框架 ...
- 《Entity Framework 6 Recipes》中文翻译系列 (21) -----第四章 ASP.NET MVC中使用实体框架之在页面中创建查询和使用ASP.NET URL路由过虑
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 4.2. 构建一个搜索查询 搜索数据是几乎所有应用的一个基本功能.它一般是动态的,因 ...
- 精通Web Analytics 2.0 (6) 第四章:点击流分析的奇妙世界:实际的解决方案
精通Web Analytics 2.0 : 用户中心科学与在线统计艺术 第四章:点击流分析的奇妙世界:实际的解决方案 到开始实际工作的时候了.哦耶! 在本章中,您将了解到一些最重要的网络分析报告,我将 ...
- Java语言程序设计(基础篇) 第四章 数学函数、字符和字符串
第四章 数学函数.字符和字符串 4.2 常用数学函数 方法分三类:三角函数方法(trigonometric method).指数函数方法(exponent method)和服务方法(service m ...
- 《利用python进行数据分析》读书笔记--第四章 numpy基础:数组和矢量计算
http://www.cnblogs.com/batteryhp/p/5000104.html 第四章 Numpy基础:数组和矢量计算 第一部分:numpy的ndarray:一种多维数组对象 实话说, ...
- 05 技术内幕 T-SQL 查询读书笔记(第四章)
第四章 子查询:在外部查询内嵌套的内部查询(按照期望值的数量分为,标量子查询 scalar subqueries,多值子查询multivalued subqueries)(按照子查询对外部查询的依赖性 ...
随机推荐
- 老毛桃U盘启动盘,通过ghost创建xp系统蓝屏问题
新买的东芝笔记本只预安装了dos,找来一个老毛桃U盘启动盘,进入winpe用ghost恢复成xp系统:重启后,系统蓝屏,提示的主要报错代码 0x0000007B 与 要求“chkdsk /f”处理. ...
- noip数学
一.取模运算 (1)定义 给定一个正整数p和一个整数n 一定存在此等式 n=k*p+r;其中k,r是整数,r大于等于0小于p 称k是n除以p的商,r为n除以p的余数 说明:同余式 正整数a,b对p取模 ...
- 【旧文章搬运】炉子给的SYSTEM_HANDLE_TYPE有点错误
原文发表于百度空间,2008-12-03========================================================================== 今天写程序 ...
- #ifndef <标识> #define <标识> #endif
头件的中的#ifndef,这是一个很关键的东西.比如你有两个C文件,这两个C文件都include了同一个头文件.而编译时,这两个C文件要一同编译成一个可运行文件,于是问题来了,大量的声明冲突. 还是把 ...
- lua-resty-r3 高性能 OpenResty 路由实现
大家下午好!首先做下自我介绍,我于 2014 年加入奇虎 360,后与温铭结识,当时他正在基于 OpenResty 做天擎服务端,用于提供 API 服务.2015 年我们一起写了< OpenRe ...
- 博客使用的CSS代码备份
CSS代码备份 /*simplememory*/ #google_ad_c1, #google_ad_c2 { display: none; } .syntaxhighlighter a, .synt ...
- template code 引用的一些问题
1.问题: 引用同一个norlib.tt 下面的tt . 一个KSTrade 正确. 一个 NDAP就报错. 报错说源文件某个函数有错误 helper.Common.tt 错误 2.结果: NDAP ...
- EasyUI创建选项卡并判断是否打开
//创建选项卡:判断选项卡是否打开,如果以打开则定位到选项卡,否则创建 function addPanel(title) { var bol = $('#main_tabs').tabs('exist ...
- Django Views: Dynamic Content
世味年来薄似纱,谁令骑马客京华. 小楼一夜听春雨,深巷明朝卖杏花. 矮纸斜行闲作草,晴窗细乳戏分茶. 素衣莫起风尘叹,犹及清明可到家. Your Second View: Dynamic Conten ...
- C# BitmapData和Marshal.Copy()用法
C# BitmapData和Marshal.Copy()用法 //此函数用法例子如下: public static byte[] GetGrayArray(Bitmap srcBmp, Rectang ...