涂抹Oracle笔记1-创建数据库及配置监听程序
一、安装ORACLE数据库软件及创建实例
OLTP:online transaction processing
指那些短事务,高并发,读写频繁的数据库系统。--DB_BLOCK_SIZE通常设置较小。
OLAP:online analysis processing
指那些处理长事务,低并发,多读少写的数据库系统。---DB_BLOCK_SIZE通常设置较大,如32K.
ASM:automatic storage management
自动存储管理系统,独立于操作系统的一种存储管理系统,直接通过操作系统看不到存储的数据。
Raw Device:裸设备
没有文件系统的存储设备。如新的硬盘,没有分区或者不分区,没有格式化直接挂到操作系统上使用。
oracle数据文件默认存储位置:$Oracle_base\oradata\sid_name\目录下
OMF:Oracle Manage File
Oracle管理文件,在创建数据库如果选择该种文件路径方式,在创建表空间数据文件、控制文件、日志文件时就不需要指定位置和文件 名。oracle会根据一些初始化参数的设置自动
分配和命令,通常和ASM搭配使用。
oracle安装过程中的内存参数初始化:
如果没有特殊用途一般选择典型或是定制自动管理内存。
SGA对应参数:SGA_TARGET PGA对应参数:PGA_TARGET
对于SGA,PGA与系统内存三者之间的关系,有一个相对通用的计算规则:
对于OLTP数据库,SGA=系统内存x70%x80%,PGA=SGAx(10%~20%)
对于OLAP数据库,SGA=系统内存x80%x60%, PAG=SGAx(45%~65%)
对于32bit平台,默认情况下SGA最大可用内存为1.7GB。
共享池:用来存放Library Cache,编译过的SQL,PLSQL等内容。一般在300至500MB,对应初始化参数:SHARED_POOL_SIZE
缓冲区高速缓存:数据库中的数据从硬盘读出来就存在这里,该值越大越好,对应参数:DB_CACHE_SIZE
Java池:如果数据库没有java_procedure或者未选择Oracle_JVM组件,该值可设置为0,一般不需要设置太大,对应参数JAVA_POOL_SIZE
大型池:主要应用于直接路径导入导出、RMAN备份等。一般设置为100至200MB,对应参数:LARGE_POOL_SIZE
指定数据库字符集:
一般选择从字符集列表中选择--->ZHS16GBK-GBK15位简体中文。否则有可能出现乱码。
专用服务器
每一个连接到Oracle数据库的用户进程都有一个专用的服务器进程为其提供服务,直到用户进程断开连接。各个进程间互相独,互不影响。这种模 式比较适合OLAP系统,即少量用户
连接,长时间运行的应用。
共享服务器
是指oracle始终保持一定数量的服务器进程,用户进程连接时首先连接到服务器的一个调度进程,由调度进程为其分配服务器进程,这样只有少量的服务器进程就能为大量用户进程提供
服务。这种模式比较适合OLTP系统。如网站这种高并发、大访问量的需求,服务器无法同时提供太多进程以供连接。实际上大型应用中均有中间件来提供独立的连接池服务,因此大多选择专
用服务器模式。
二、配置监听
1、服务器端创建监听服务--对应listener.ora文件
windows下直接在程序中打开Net Configguration Assistant工具进行配置
-----对于windows服务器,NETCA工具配置完后会在服务管理器中会自动创建新的监听服务项,并自动启动。如:OracleOraDb11g_home1TNSListener
linux环境下以root登录图形界面,切换到oracle用户,执行netca,即可调出Net Configguration Assistant。操作步骤跟windows环境下一致。
2、服务器端使用Net Manager配置监听服务--配置信息保存于listener.ora文件中
即配置监听程序应该监听哪些数据库实例。
windows下直接在程序中打开Net Manager工具进行配置
linux环境下以root登录图形界面,切换到oracle用户,执行netmgr,即可调出Net Manager工具
Net Manager配置的监听信息保存于这个文件中:$ORACLE_HOME\network\admin\listener.ora
# listener.ora Network Configuration File: D:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora
# Generated by Oracle configuration tools. SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = orcl) #其中GLOBAL_DBNAME不是必需的除非使用HOSTNAME做数据库连接
(ORACLE_HOME = D:\app\Administrator\product\11.2.0\dbhome_1)
(SID_NAME = ORCL)
)
) LISTENER = #监听器的名字,一台数据库可以有不止一个监听器
(DESCRIPTION = #再向下面是监听器监听的协议,ip,端口等,这里使用的tcp1521端口,并且使用的是主机名
(ADDRESS = (PROTOCOL = TCP)(HOST = hostname1)(PORT = 1521))
) ADR_BASE_LISTENER = D:\app\Administrator
关于监听程序的说明:接受远程对数据库的接入申请并转交给oracle的服务器进程。所以如果不是使用的远程的连接,listener进程就不是必需的,同样的如果关闭listener进程并不会影响已经存在的数据库连接。所有监听只在服务器端配置。listener.ora文件也只在服务器端存在。
3.客户端的配置:tnsnames.ora
这个文件类似于unix 的hosts文件,提供的tnsname到主机名或者ip的对应,只有当sqlnet.ora中类似NAMES.DIRECTORY_PATH= (TNSNAMES) 这样,也就是客户端解析连接字符串的顺序中有TNSNAMES时,才会尝试使用这个文件。
# tnsnames.ora Network Configuration File: D:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools. RUSKY = #客户端的这个名字可以随便
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = hostname1)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
4.sqlnet.ora文件
sqlnet.ora可以删除,这样在oracle客户端连接数据库的时候,默认采用tnsnames.ora中的配置。
# 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)
例如我们客户端输入
sqlplus sys/rusky123@rusky
假如我的sqlnet.ora是下面这个样子
SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES,HOSTNAME)
那么,客户端就会首先在tnsnames.ora文件中找rusky的记录.如果没有相应的记录则尝试把rusky当作一个主机名,通过网络的途径去解析它的 ip地址然后去连接这个ip上GLOBAL_DBNAME=orcl这个实例,当然我这里rusky并不是一个主机名
如果我是这个样子
NAMES.DIRECTORY_PATH= (TNSNAMES)
那么客户端就只会从tnsnames.ora查找rusky的记录,并且找到主机名,端口和service_name,如果listener进程没有问题的话,建立与listener进程的连接。根据不同的服务器模式如专用服务器模式或者共享服务器模式,listener采取接下去的动作。默认是专用服务器模式,没有问题的话客户端就连接上了数据库的server process。这时候网络连接已经建立,listener进程的历史使命也就完成了。
5、监听的启动和停止
windows下可直接启停相应的服务。
linux环境和WindowsCMD界面可用监听命令:lsnrctl stop/start/status/version/reload/help/save_config/services/change_password
涂抹Oracle笔记1-创建数据库及配置监听程序的更多相关文章
- 新建Oracle数据库时,提示使用database control配置数据库时,要求在当前oracle主目录中配置监听程序
新建一个oracle数据库时,当提示使用database control配置数据库时,要求在当前oracle主目录中配置监听程序等字样的时候,问题是那个监听的服务没有启动,解决方法如下: 打开cmd命 ...
- Oracle数据库配置监听程序
最近在学习Oracle数据库,从安装到配置监听程序基本靠百度... 不得不说百度真的很nice!!! 下面是我的Oracle服务端(PL/SQL Developer)出现的监听程序的问题及我解决的方法 ...
- oracle 11g在安装过程中出现监听程序未启动或数据库服务未注册到该监听程序
15511477451 原文 oracle 11g在安装过程中出现监听程序未启动或数据库服务未注册到该监听程序? 环境:win7 64位系统.oracle11g数据库 问题描述:在win7 64位系统 ...
- oracle 12541,12560,00511无监听程序, 协议适配器错误问题分析及解决方案
oracle 12541,12560,00511无监听程序, 协议适配器错误问题分析及解决方案 问题描述: 1. lsnrctl start.stop.非常慢,出现卡顿现象: 2. 执行lsnrc ...
- ORACLE telnet 1521 不通及ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务的解决
服务器上安装了oracle11g , 防火墙上已经增加1521 入站规则.但是内网客户端配置好了TNS无法连接.telnet 1521 不通. 需要在服务器上\product\10.2.0\db_1\ ...
- Oracle11g 创建数据库中问题处理(必须运行Netca以配置监听程序)
这两天学习<OCP/OCA认证考试指南>,要创建新的数据库,因为此前我的电脑上已经被折腾了好久的Mysql 和oracle10g ,所以可能导致很多环境都变了,创建数据库的过程中出现了一些 ...
- 涂抹Oracle笔记2:数据库的连接-启动-关闭
一.数据库的连接sqlplus <username>[/<password>][@<connect_idertifier>]|/[as sysdba| as sys ...
- 使用database control配置数据库时 要求在当前oracle主目录中配置监听程序
1:配置本地的环境变量 打开cmd命令界面 C:\Users\gechong>lsnrctl start 这时候报适配器错误 2.在cmd中输入 tnslsnr命令
- 解决:python 连接Oracle 11g 报错:ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
其次,将查询到的service_name替换sid即可:conn=cx_Oracle.connect('hr/admin@localhost:1521/EE.oracle.docker')
随机推荐
- DevExpress ASPxHtmlEditor控件格式化并导出Word (修复中文字体导出丢失)
在前台页面中先插入一个ASPxHtmlEditor控件,名为ASPxHtmlEditor1. 我用的Dev版本为14.1 格式化文本 在后台插入如下代码 1 const string css ...
- highcharts的使用
步骤: 1. 去highcharts官网下载最新版本 2. 在.aspx页面添加引用 例: <link href="../JS/highcharts/css/highslide.css ...
- Windows服务简单实例
1.定时器使用 partial class TimerService : ServiceBase { public TimerService() { InitializeComponent(); } ...
- 在用EF新增对象存贮至数据库时汪报错,但数据库里没有新增数据
大致的问题是这样的: 原来一直用存贮数据的方法是用的是:DBContext.AddToXXXX(),这个方法.在写代码的时候看到VS提示这个方法已失效,推荐使用DBContext.XXXX.AddOb ...
- ps 换图片的背景颜色
先把图像格式换乘RGB然后调整颜色,不用谢我是活雷锋!www.idouly.com
- LeetCode-Divdend two Integers
题目: Divide two integers without using multiplication, division and mod operator. 思路分析 二分法.将除数不断增倍,而结 ...
- paip输入法编程之生活用高频字,以及汉字分级
paip输入法编程之生活用高频字 作者Attilax , EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http://blog.csdn.net/attilax ...
- IntelliJ IDEA14如何配置tomcat
http://doc.okbase.net/frank1234/archive/121479.html
- .net mvc结合微软提供的FormsAuthenticationTicket登陆
一.Web.config <system.web> <compilation debug="true" targetFramework="4.5&quo ...
- 转载收藏之用 - 微信公众平台开发教程(四):Hello World
这一篇文章其实可以写在很前面,不过我还是希望开发者们尽多地了解清楚原理之后再下手. 通过上一篇Senparc.Weixin.MP SDK 微信公众平台开发教程(三):微信公众平台开发验证,我们已经使微 ...