WINDOWS环境下如何使用操作系统认证登录ORACLE数据库

来源:百度文库 编辑:神马文学网 时间:2024/04/27 19:26:52
转载声明:版权规文章原创作者所有
转载时间:2007年08月10日
转载作者:pablo3518
WINDOWS环境下如何使用操作系统认证登录ORACLE数据库
===========================================================================================================================================
请参考:
http://www.itpub.net/151470.html
http://www.itpub.net/162971.html
http://www.itpub.net/207909.html
http://blog.itpub.net/post/468/4223
http://grassbell.itpub.net/post/26/7704
说明:
通过语句CREATE USER DBUSER IDENTIFIED EXTERNALLY创建的OS认证的用户,实际上是OS USER与DB USER建立的映射关系,将OS用户也对应加入数据库用户中,这类的用户将由OS进行用户的验证,OS USER与DB USER之间的对应关系需告知ORACLE,这个对应关系就是由初始化参数OS_AUTHENT_PREFIX定义的。对应关系取决于注册表项OSAUTH_PREFIX_DOMAIN的值:
当OSAUTH_PREFIX_DOMAIN的值为TRUE
DB USER = OS_AUTHENT_PREFIX || ‘主机名’ || OS USER
当OSAUTH_PREFIX_DOMAIN的值为FALSE
DB USER = OS_AUTHENT_PREFIX || OS USER
OS_AUTHENT_PREFIX的默认值是OPS$
查看全文
Oracle114 发表于:2007.03.28 20:22 ::分类: (Oracle结构与管理 ) ::阅读:(187次) ::评论 (0) ::引用 (0)
===========================================================
Which Operations are Allowed or Prohibited on RBS with or without AUM?
===========================================================
Doc ID: Note:135217.1
Subject: Which Operations are Allowed or Prohibited on RBS with or without AUM?
Type: BULLETIN
Status: PUBLISHED
Content Type: TEXT/PLAIN
Creation Date: 08-FEB-2001
Last Revision Date: 07-AUG-2003
PURPOSE
-------
This bulletin shows the errors you would encounter when you attempt to use
operations on rollback segments whether you are in Automatic Undo Management
(AUM) mode or not.
It explains the reasons for the restrictions applied on rollback segment
management.
The error messages always specify which mode the operations takes place in:
* Automatic Undo Management
* Manual Undo Management
SCOPE & APPLICATION
-------------------
For DBAs who are used to managing the rollback segments of a database manually
and who now have to consider the existence of AUM (Automatic Undo Management).
Which operations are allowed or prohibited on rollback segments when you are
using or not using AUM?
Different types of errors
-------------------------
Imagine you have two UNDO tablespaces available in the database, and therefore
a number of system-generated rollback segments.
You also have at least a user-generated rollback segment called SYSTEM and
eventually some other user-generated rollback segments in non UNDO tablespaces.
SQL> create undo tablespace UNDO_RBS1
2 datafile ‘undorbs1.dbf‘ size 100m;
Tablespace created.
SQL> select TABLESPACE_NAME, CONTENTS,
2 EXTENT_MANAGEMENT, ALLOCATION_TYPE,
3 SEGMENT_SPACE_MANAGEMENT
4 from dba_tablespaces where contents=‘UNDO‘;
TABLESPACE_NAME CONTENTS EXTENT_MAN ALLOCATIO SEGMEN
------------------------------ --------- ---------- --------- ------
RBS UNDO LOCAL SYSTEM MANUAL
UNDO_RBS1 UNDO LOCAL SYSTEM MANUAL
SQL> select owner,segment_name,tablespace_name, status
2 from dba_rollback_segs order by 3;
OWNER SEGMENT_NAME TABLESPACE_NAME STATUS
------ -------------- --------------- ----------------
PUBLIC _SYSSMU1$ RBS ONLINE
PUBLIC _SYSSMU2$ RBS ONLINE
PUBLIC _SYSSMU3$ RBS ONLINE
PUBLIC _SYSSMU5$ RBS ONLINE
PUBLIC _SYSSMU7$ RBS ONLINE
PUBLIC _SYSSMU9$ RBS ONLINE
PUBLIC _SYSSMU10$ RBS ONLINE
PUBLIC _SYSSMU8$ RBS ONLINE
PUBLIC _SYSSMU6$ RBS ONLINE
PUBLIC _SYSSMU4$ RBS ONLINE
SYS SYSTEM SYSTEM ONLINE
SYS RS01 SYSTEM OFFLINE
PUBLIC _SYSSMU11$ UNDO_RBS1 OFFLINE
PUBLIC _SYSSMU12$ UNDO_RBS1 OFFLINE
You try the following operations and receive errors:
-----------------------------------------------------------
Example 1: Create a rollback segment in an UNDO tablespace
-----------------------------------------------------------
UNDO_MANAGEMENT=AUTO
SQL> create rollback segment undo_rs1 tablespace undo_rbs1;
create rollback segment undo_rs1 tablespace undo_rbs1
*
ERROR at line 1:
ORA-30019: Illegal rollback Segment operation in Automatic Undo mode
----------------------------------------------------------
Example 2: Alter a rollback segment of an UNDO tablespace
----------------------------------------------------------
UNDO_MANAGEMENT=AUTO
SQL> alter rollback segment "_SYSSMU11$" online;
alter rollback segment "_SYSSMU11$" online
*
ERROR at line 1:
ORA-30019: Illegal rollback Segment operation in Automatic Undo mode
SQL> alter rollback segment "_SYSSMU8$" offline;
alter rollback segment "_SYSSMU8$" offline
*
ERROR at line 1:
ORA-30019: Illegal rollback Segment operation in Automatic Undo mode
--------------------------------------------------------------
Example 3: Create a rollback segment in a non UNDO tablespace
--------------------------------------------------------------
UNDO_MANAGEMENT=AUTO
SQL> create public rollback segment rs02 tablespace system;
create public rollback segment rs02 tablespace system
*
ERROR at line 1:
ORA-30019: Illegal rollback Segment operation in Automatic Undo mode
------------------------------------------------------------------
Example 4: Online a rollback segment created in an UNDO tablespace
------------------------------------------------------------------
UNDO_MANAGEMENT=MANUAL
Create a rollback segment in an UNDO tablespace and set it online:
SQL> create rollback segment undo_rs1 tablespace undo_rbs1;
Rollback segment created.
SQL> alter rollback segment undo_rs1 online;
Rollback segment altered.
UNDO_MANAGEMENT=AUTO
Start the database in AUM mode. Any rollback segment previously created in the
active UNDO tablespace is automatically set OFFLINE and cannot be set back online.
SQL> alter rollback segment undo_rs1 online;
alter rollback segment undo_rs1 online
*
ERROR at line 1:
ORA-30019: Illegal rollback Segment operation in Automatic Undo mode
But you can drop them:
SQL> drop rollback segment undo_rs1;
Rollback segment dropped.
=>
All cases of error ORA-30019 are a result of choosing to manage rollback
segments in AUTOMATIC mode, setting the init.ora parameter to
UNDO_MANAGEMENT=AUTO
----------------------------------------------------------------------------
|The RDBMS prohibits any manual operation on ROLLBACK SEGMENTS of any type |
|of tablespace, except dropping them. |
----------------------------------------------------------------------------
--------------------------------------------------------------
Example 5: Alter an UNDO tablespace to set it OFFLINE
--------------------------------------------------------------
UNDO_MANAGEMENT=MANUAL
SQL> select TABLESPACE_NAME, CONTENTS, STATUS
2 from dba_tablespaces where contents=‘UNDO‘;
TABLESPACE_NAME CONTENTS STATUS
------------------------------ --------- ---------
RBS UNDO OFFLINE
UNDO_RBS1 UNDO ONLINE
SQL> alter tablespace undo_rbs1 offline;
alter tablespace undo1 offline
*
ERROR at line 1:
ORA-01546: tablespace contains active rollback segment ‘UNDO_RS1‘
Since you can create rollback segments in UNDO tablespaces, if you are in
manual mode, the rollback segments created in UNDO tablespaces are made
available for the transactions. You cannot therefore offline the tablespace
they reside in without first offlining any rollback segments in the tablespace.
SQL> alter rollback segment undo_rs1 offline;
Rollback segment altered.
SQL> alter tablespace undo_rbs offline;
Tablespace altered.
--------------------------------------------------------------------------
Example 6: Alter a system-managed rollback segment of an UNDO tablespace ONLINE
--------------------------------------------------------------------------
UNDO_MANAGEMENT=MANUAL
SQL> select tablespace_name,segment_name, status from dba_rollback_segs;
TABLESPACE_NAME SEGMENT_NAME STATUS
------------------------------ ------------------------------ -------------
SYSTEM SYSTEM ONLINE
RBS _SYSSMU1$ OFFLINE
RBS _SYSSMU2$ OFFLINE
RBS _SYSSMU3$ OFFLINE
RBS _SYSSMU4$ OFFLINE
RBS _SYSSMU5$ OFFLINE
RBS _SYSSMU6$ OFFLINE
RBS _SYSSMU7$ OFFLINE
RBS _SYSSMU8$ OFFLINE
RBS _SYSSMU9$ OFFLINE
RBS _SYSSMU10$ OFFLINE
UNDO_RBS1 _SYSSMU11$ OFFLINE
SQL> alter rollback segment "_SYSSMU11$" ONLINE;
alter rollback segment "_SYSSMU11$" ONLINE
*
ERROR at line 1:
ORA-30017: segment ‘_SYSSMU1$‘ is not supported in MANUAL Undo Management mode
If you have set UNDO_MANAGEMENT to MANUAL, any system-generated undo segments
that were previously created in AUTO mode cannot be manually altered.
*** ********************************
*** In all cases: AUM or MANUAL mode
*** ********************************
The only operations you can perform with system-generated undo segments
are CREATE/DROP UNDO tablespace:
SQL> drop rollback segment "_SYSSMU11$";
drop rollback segment "_SYSSMU11$"
*
ERROR at line 1:
ORA-30025: DROP segment ‘_SYSSMU11$‘ (in undo tablespace) not allowed
SQL> drop tablespace UNDO_RBS1 including contents and datafiles;
Tablespace dropped.
SQL> create undo tablespace undo_rbs1
2 datafile ‘/sme/app/oracle/product/9iRel10/oradata/V9r10/undorbs1.dbf‘
3 size 200k;
Tablespace created.
RELATED DOCUMENTS
-----------------
[NOTE:135090.1] Managing Rollback/Undo Segments in AUM (Automatic Undo
Management)
[NOTE:135053.1] How to Create a Database with Automatic Undo Management
Oracle114 发表于:2007.03.07 09:37 ::分类: (Oracle结构与管理 ) ::阅读:(67次) ::评论 (1) ::引用 (0)
===========================================================
登录错误-----ORA-12560: TNS: 协议适配器错误
===========================================================
有网友遇到登录时,oracle报12560错误
http://www.itpub.net/showthread.php?s=&postid=6774761
---------------------------------------------------------------
问:操作系统windows,oracle9i在服务端,以sys登陆不加服务名,登陆报错;如果加上服务名登陆正确。重启操作系统,重启db,现在在服务端无论用什么用户登陆只要不加服务名都错误;连接时加上服务名就正确。到底为什么呀?
C:>sqlplus /nolog
SQL*Plus: Release 9.2.0.1.0 - Production on 星期三 1月 31 08:46:08 2007
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
SQL> connect sys/oracle@vassp as sysdba已连接。
SQL> exit从Oracle9i Release 9.2.0.1.0 - Production
JServer Release 9.2.0.1.0 - Production中断开
C:>sqlplus /nolog
SQL*Plus: Release 9.2.0.1.0 - Production on 星期三 1月 31 08:46:24 2007
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
SQL> connect /as sysdba
ERROR:
ORA-12560: TNS: 协议适配器错误
---------------------------------------------------------------
由于这个问题也正困绕着我,一直在关注这个贴子的动态.今天看到PondKa的回复后,才豁然开朗
我的平台:windows2003+oracle9.2.0.1.0
SQL> select * from v$version;
BANNER
---------------------------------------------------------------
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production PL/SQL Release 9.2.0.1.0 - Production
CORE 9.2.0.1.0 Production
TNS for 32-bit Windows: Version 9.2.0.1.0 - Production
NLSRTL Version 9.2.0.1.0 - Production
我的系统开始运行正常,系统只有一个数据库test1,为了自己做测试,又建了第两个数据库test2,这样当启动test1的服务后,当登录总是报如下错误:
ERROR:
ORA-12560: TNS: 协议适配器错误
自己尝试了几次没有搞定,发现登录时加上服务名可以正常登录,也就随它去了,但这个问题也依然在自己脑中.
BTW:自己为什么没有拿到论坛上来问问大家,BS一下自己
经过测试发现,
1.确认sqlnet.ora文件中设置为操作系统验证
SQLNET.AUTHENTICATION_SERVICES= (NTS)
2.查看windows对应的服务是否开启
打开services查看,服务名oracleservice的运行状态,该服务的启动与关闭也可通过CML(命令行 COMMAND LINE)进行操作.
SQL> $net start oracleserviceTEST2The OracleServiceTEST2 service is starting.
The OracleServiceTEST2 service was started successfully.
SQL> $net stop oracleserviceTEST2The OracleServiceTEST2 service is stopping...
The OracleServiceTEST2 service was stopped successfully.
注:WINNT中,在sqlplus中运行dos命令时,命令前加"$"符号
3.查看本地环境变量ORACLE_SID,ORACLE_HOME是否正确设置
C:Documents and SettingsAdministrator> set
ALLUSERSPROFILE=C:Documents and SettingsAll Users
APPDATA=C:Documents and SettingsAdministratorApplication Data
ClusterLog=C:WINDOWSClustercluster.log
CommonProgramFiles=C:Program FilesCommon Files
COMPUTERNAME=LDY
ComSpec=C:WINDOWSsystem32cmd.exe
FP_NO_HOST_CHECK=NO
HOMEDRIVE=C:
HOMEPATH=Documents and SettingsAdministrator
JSERV=F:oracleora92/Apache/Jserv/conf
LOGONSERVER=LDY
NUMBER_OF_PROCESSORS=1
oracle_home=F:oracleora92
oracle_sid=TEST1OS=Windows_NT....
4.如果没有设置环境变量,请查看注册表中,HKEY_LOCAL_MACHINE->SOFTWARE->ORACLE->HOME0中的ORACLE_SID,ORACLE_HOME项是否正确设置,如果oracle只有一个数据库,只需注册表中正确设置即可,无需设置环境变量.当然,如果像有多个数据库,需动态设置该环境变量
C:Documents and SettingsAdministrator>set oracle_home=
C:Documents and SettingsAdministrator>set oracle_sid=
C:Documents and SettingsAdministrator>set
ALLUSERSPROFILE=C:Documents and SettingsAll Users
APPDATA=C:Documents and SettingsAdministratorApplication Data
ClusterLog=C:WINDOWSClustercluster.log
CommonProgramFiles=C:Program FilesCommon Files
COMPUTERNAME=LDY
ComSpec=C:WINDOWSsystem32cmd.exe
FP_NO_HOST_CHECK=NO
HOMEDRIVE=C:
HOMEPATH=Documents and SettingsAdministrator
JSERV=F:oracleora92/Apache/Jserv/conf
LOGONSERVER=LDY
NUMBER_OF_PROCESSORS=1
OS=Windows_NT...无此变量
C:Documents and SettingsAdministrator>sqlplus /nolog
SQL*Plus: Release 9.2.0.1.0 - Production on 星期四 2月 1 19:56:47 2007
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
SQL> conn / as sysdba已连接。
5.如果有多个数据库,若想默认连接某个数据库,可不管当前注册表的设置,手动设置环境变量ORACLE_SID即可请看实验:
当前注册表ORACLE_SID=TEST1,
C:Documents and SettingsAdministrator>set oracle_sid=
C:Documents and SettingsAdministrator>sqlplus /nolog
SQL*Plus: Release 9.2.0.1.0 - Production on 星期四 2月 1 20:39:41 2007
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
SQL> $net stop oracleserviceTEST2
The OracleServiceTEST2 service is stopping...
The OracleServiceTEST2 service was stopped successfully.
SQL> $net stop oracleserviceTEST1
The OracleServiceTEST1 service is stopping........
The OracleServiceTEST1 service could not be stopped.
SQL> $net start oracleserviceTEST1
The OracleServiceTEST1 service is starting.
The OracleServiceTEST1 service was started successfully.
SQL> conn / as sysdba
已连接到空闲例程。
--注:当有注册设置时,即使没有设置环境变量,此时系统可按注册表设置进行TEST1的登录
SQL> $net stop oracleserviceTEST1
The OracleServiceTEST1 service is stopping...
The OracleServiceTEST1 service was stopped successfully.
SQL> conn / as sysdba
ERROR:
ORA-12560: TNS: 协议适配器错误
警告: 您不再连接到 ORACLE。
--注:当相关WINNT服务ORACLESERVICETEST1没有开启,用户将无法正常连接TEST1
SQL> $net start oracleserviceTEST1
The OracleServiceTEST1 service is starting.
The OracleServiceTEST1 service was started successfully.
SQL> conn / as sysdba
已连接到空闲例程。
SQL> exit
已断开连接
C:Documents and SettingsAdministrator>set oracle_sid=TEST2
C:Documents and SettingsAdministrator>sqlplus /nolog
SQL*Plus: Release 9.2.0.1.0 - Production on 星期四 2月 1 20:45:29 2007
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
SQL> conn / as sysdba
ERROR:
ORA-12560: TNS: 协议适配器错误
--注:环境变量的设置影响用户登录数据库的选择,此时设置为TEST2,而NT服务ORACLESERVICEQTEST2没有开启,所以显示登录错误
SQL> $NET START ORACLESERVICEQTEST2
The OracleServiceTEST2 service is starting.
The OracleServiceTEST2 service was started successfully.
SQL> CONN / AS SYSDBA
已连接到空闲例程。
Oracle114 发表于:2007.02.01 18:24 ::分类: (Oracle结构与管理 ) ::阅读:(510次) ::评论 (1) ::引用 (0)
===========================================================
[ZT]net命令详解
===========================================================
http://www.itpub.net/showthread.php?s=&threadid=38753&perpage=10&pagenumber=1
这篇文章综合了WINDOWS 98,WINDOWS WORKSTATION和WINDOWS SERVER 三个操作系统关于NET命令的解释,希望可以全面一些 先说一些:
(1)NET命令是一个命令行命令。
(2)管理网络环境、服务、用户、登陆。。。。等本地信息
(3)WIN 98,WIN WORKSTATION和WIN NT都内置了NET命令。
(4)但WIN 98的NET命令和WORKSTATION、NT的NET命令不同。
(5)WORKSTATION和SERVER中的NET命令基本相同。
(6)获得HELP
<1>在NT下可以用图形的方式,开始-》帮助-》索引-》输入NET
<2>在COMMAND下可以用字符方式,NET /?或NET或NET HELP得到一些方法 相应的方法的帮助NET COMMAND /HELP或NET HELP COMMAND 或NET COMMAND /? 另对于错误NET HELPMSG MESSAGE#是4位数
(7)强制参数 所有net命令接受选项/yes和/no(可缩写为/y和/n)。[简单的说就是预先给系统的 提问一个答案]
(8)有一些命令是马上产生作用并永久保存的,使用的时候要慎重
(9)对于NET命令的功能都可以找到相应的图形工具的解决方案
(10)命令的组成 命令 参数 选项 | 参数 选项 | 参数 选项 |。。。。。。
瘰疬罗嗦说了一大堆,其实就是6和7有用,呵呵 另有两件事:
(1)在NT的NET命令中有一些参数是只有在SERVER环境中才能使用的
(2)在WIN98的NET命令中有一些参数不能在DOS-WIN中使用,只能在DOS环境中使用
下面对NET命令的不同参数的基本用法做一些初步的介绍:
(1)NET VIEW
作 用:显示域列表、计算机列表或指定计算机的共享资源列表。
命令格式:net view [computername | /domain[omainname]
参数介绍:
<1>键入不带参数的net view显示当前域的计算机列表。
<2>computername 指定要查看其共享资源的计算机。
<3>/domain[omainname]指定要查看其可用计算机的域
简单事例
<1>net view YFANG查看YFANG的共享资源列表。
<2>net view /domain:LOVE查看LOVE域中的机器列表。
(2)NET USER
作 用:添加或更改用户帐号或显示用户帐号信息。该命令也可以写为 net users。
命令格式:net user [username [password | *] [options] [/domain]
参数介绍:
<1>键入不带参数的net user查看计算机上的用户帐号列表。
<2>username添加、删除、更改或查看用户帐号名。
<3>password为用户帐号分配或更改密码。
<4>*提示输入密码。
<5>/domain在计算机主域的主域控制器中执行操作。
简单事例:
<1>net user yfang查看用户YFANG的信息
(3)NET USE
作用:连接计算机或断开计算机与共享资源的连接,或显示计算机的连接信息。
命令格式:net use [devicename | *] [computernamesharename[volume] [password | *] [/user:[domainname]username] [/delete] | [/persistent:{yes | no]}
参数介绍:
键入不带参数的net use列出网络连接。
devicename指定要连接到的资源名称或要断开的设备名称。 computernamesharename服务器及共享资源的名称。
password访问共享资源的密码。
*提示键入密码。 /user指定进行连接的另外一个用户。
domainname指定另一个域。
username指定登录的用户名。
/home将用户连接到其宿主目录
/delete取消指定网络连接。
/persistent控制永久网络连接的使用。
简单事例:
<1>net use e: YFANGTEMP将YFANGTEMP目录建立为E盘
<2>net use e: YFANGTEMP /delete断开连接
(4)NET TIME
作 用:使计算机的时钟与另一台计算机或域的时间同步。
命令格式:net time [computername | /domain[:name] [/set]
参数介绍:
<1>computername要检查或同步的服务器名。
<2>/domain[:name]指定要与其时间同步的域。
<3>/set使本计算机时钟与指定计算机或域的时钟同步。
下面的这4个参数是相关的,所以一起介绍
(5)Net Start
作 用:启动服务,或显示已启动服务的列表。
命令格式:net start service
(6)Net Pause
作 用:暂停正在运行的服务。
命令格式:net pause service
(7)Net Continue
作 用:重新激活挂起的服务。
命令格式:net continue service
(8)NET STOP
作 用:停止 Windows NT 网络服务。
命令格式:net stop service
参数介绍:我们来看看这些服务都是什么
<1>alerter(警报)
<2>client service for netware(Netware 客户端服务)
<3>clipbook server(剪贴簿服务器)
<4>computer browser(计算机浏览器)
<5>directory replicator(目录复制器)
<6>ftp publishing service (ftp )(ftp 发行服务)
<7>lpdsvc
<8>net logon(网络登录) <9>network dde网络 dde)
<10>network dde dsdm(网络 dde dsdm)
<11>network monitor agent(网络监控代理)
<12>nt lm security support provider(NT LM 安全性支持提供)
<13>ole(对象链接与嵌入)
<14>remote access connection manager(远程访问连接管理器)
<15>remote access isnsap service(远程访问 isnsap 服务)
<16>remote access server(远程访问服务器)
<17>remote procedure call (rpc) locator(远程过程调用定位器)
<18>remote procedure call (rpc) service(远程过程调用服务)
<19>schedule(调度)
<20>server(服务器)
<21>simple tcp/ip services(简单 TCP/IP 服务)
<22>snmp
<23>spooler(后台打印程序)
<24>tcp/ip netbios helper(TCP/IP NETBIOS 辅助工具)
<25>ups (26)workstation(工作站)
<27>messenger(信使)
<28>dhcp client
<29>eventlog 以下这些SERVICE只能在NT SERVER上使用
<< 1>> )file server for macintosh
<<2>>gateway service for netware
<<3>>microsoft dhcp server
<<4>>print server for macintosh
<<5>>remoteboot
<<6>>windows internet name service
(9)Net Statistics
作 用:显示本地工作站或服务器服务的统计记录。
命令格式:net statistics [workstation | server]
参数介绍:
<1>键入不带参数的net statistics列出其统计信息可用的运行服务。 <2>workstation显示本地工作站服务的统计信息。
<3>server显示本地服务器服务的统计信息。
简单事例:
<1>net statistics server | more显示服务器服务的统计信息
(10)Net Share
作 用:创建、删除或显示共享资源。
命令格式:net share sharename=drive:path [/users:number | /unlimited] [/remark:"text"]
参数介绍:
<1>键入不带参数的net share显示本地计算机上所有共享资源的信息。
<2>sharename是共享资源的网络名称。
<3>drive:path指定共享目录的绝对路径。
<4>/users:number设置可同时访问共享资源的最大用户数。
<5>/unlimited不限制同时访问共享资源的用户数。
<6>/remark:"text "添加关于资源的注释,注释文字用引号引住。
简单事例:
<1>net share mylove=c:temp /remark:"my first share"以mylove为共享名共享C:temp
<2>net share mylove /delete停止共享mylove目录
(11)Net Session
作 用:列出或断开本地计算机和与之连接的客户端的会话,也可以写为net sessions或net sess。
命令格式:net session [computername] [/delete]
参数介绍:
<1>键入不带参数的net session显示所有与本地计算机的会话的信息。
<2>computername标识要列出或断开会话的计算机。
<3>/delete结束与computername计算机会话并关闭本次会话期间计算机的所有?
简单事例:
<1>net session YFANG要显示计算机名为YFANG的客户端会话信息列表。
(12)Net Send
作 用:向网络的其他用户、计算机或通信名发送消息。
命令格式:net send {name | * | /domain[:name] | /users} message 参数介绍:
<1>name要接收发送消息的用户名、计算机名或通信名。
<2>*将消息发送到组中所有名称。
<3>/domain[:name]将消息发送到计算机域中的所有名称。
<4>/users将消息发送到与服务器连接的所有用户。
<5>message作为消息发送的文本。
简单事例:
<1>net send /users server will shutdown in 5 minutes. 给所有连接到服务器的用户发送消息
(13)Net Print
作 用:显示或控制打印作业及打印队列。
命令格式:net print [computername ] job# [/hold | /release | /delete]
参数介绍:
<1>computername共享打印机队列的计算机名。
<2>sharename打印队列名称。
<3>job#在打印机队列中分配给打印作业的标识号。
<4>/hold使用 job# 时,在打印机队列中使打印作业等待。
<5>/release释放保留的打印作业。
<6>/delete从打印机队列中删除打印作业。
简单事例:
<1>net print YFANGSEEME列出YFANG计算机上SEEME打印机队列的目录
(14)Net Name
作 用:添加或删除消息名(有时也称别名),或显示计算机接收消息的名称列表。
命令格式:net name [name [/add | /delete]
参数介绍:
<1>键入不带参数的net name列出当前使用的名称。
<2>name指定接收消息的名称。
<3>/add将名称添加到计算机中。
<4>/delete从计算机中删除名称。
(15)Net Localgroup
作 用:添加、显示或更改本地组。
命令格式:net localgroup groupname {/add [/comment:"text "] | /delete} [/domain]
参数介绍:
<1>键入不带参数的net localgroup显示服务器名称和计算机的本地组名称。
<2>groupname要添加、扩充或删除的本地组名称。
<3>/comment: "text "为新建或现有组添加注释。
<4>/domain在当前域的主域控制器中执行操作,否则仅在本地计算机上执行操作?
<5>name [ ...]列出要添加到本地组或从本地组中删除的一个或多个用户名或组名。
<6>/add将全局组名或用户名添加到本地组中。
<7>/delete从本地组中删除组名或用户名。
简单事例:
<1>net localgroup love /add将名为love的本地组添加到本地用户帐号数据库
<2>net localgroup love显示love本地组中的用户
(16)Net Group
作 用:在 Windows NT Server 域中添加、显示或更改全局组。
命令格式:net group groupname {/add [/comment:"text "] | /delete} [/domain]
参数介绍:
<1>键入不带参数的net group显示服务器名称及服务器的组名称。
<2>groupname要添加、扩展或删除的组。
<3>/comment:"text "为新建组或现有组添加注释。 <4>/domain在当前域的主域控制器中执行该操作,否则在本地计算机上执行操作?
<5>username[ ...]列表显示要添加到组或从组中删除的一个或多个用户。
<6>/add添加组或在组中添加用户名。
<7>/delete删除组或从组中删除用户名。
简单事例:
<1>net group love yfang1 yfang2 /add将现有用户帐号yfang1和yfang2添加到本地计算机的love组
(17)Net File
作 用:显示某服务器上所有打开的共享文件名及锁定文件数。
命令格式:net file [id [/close]
参数介绍:
<1>键入不带参数的net file获得服务器上打开文件的列表。
<2>id文件标识号。
<3>/close关闭打开的文件并释放锁定记录。
(18)Net Config
作 用:显示当前运行的可配置服务,或显示并更改某项服务的设置。
命令格式:net config [service [options]
参数介绍:
<1>键入不带参数的net config显示可配置服务的列表。
<2>service通过net config命令进行配置的服务(server或workstation)
<3>options服务的特定选项。
(19)Net Computer
作 用:从域数据库中添加或删除计算机。
命令格式:net computer computername {/add | /del}
参数介绍:
<1>computername指定要添加到域或从域中删除的计算机。
<2>/add将指定计算机添加到域。
<3>/del将指定计算机从域中删除。
简单事例:
<1>net computer cc /add将计算机 cc 添加到登录域
(20)Net Accounts
作 用:更新用户帐号数据库、更改密码及所有帐号的登录要求。
命令格式:net accounts [/forcelogoff:{minutes | no}] [/minpwlen:length] [/maxpwage:{days | unlimited}] [/minpwageays] [/uniquepw:number] [/domain]
参数介绍:
<1>键入不带参数的net accounts显示当前密码设置、登录时限及域信息。
<2>/forcelogoff:{minutes | no}设置当用户帐号或有效登录时间过期时
<3>/minpwlen:length设置用户帐号密码的最少字符数。
<4>/maxpwage:{days | unlimited}设置用户帐号密码有效的最大天数。
<5>/minpwageays设置用户必须保持原密码的最小天数。
<6>/uniquepw:number要求用户更改密码时,必须在经过number次后才能重复使用 与之相同的密码。
<7>/domain在当前域的主域控制器上执行该操作。 <8>/sync当用于主域控制器时,该命令使域中所有备份域控制器同步
简单事例:
<1>net accounts /minpwlen:7
将用户帐号密码的最少字符数设置为7
----------------------上面介绍的是NET命令在WINNT下的基本用法
----------------------下面我们看看NET命令在WIN98下的基本用法
在WIN98中NET命令也有一些参数 其中有一些参数的名字和功能及简单的使用方法和WINNT下的相应的参数的用法相同
其中有
(1)NET TIME命令
(2)NET PRINT命令
(3)NET USE命令
(4)NET VIEW命令
在WIN98中NET命令有一些参数 其中有一些参数的名字和WINNT下的相应的参数的名字相同但其用法却有些不同
其中有
(1)NET START
作 用:启动相应的服务。(不能在DOS-WIN中用)
命令格式:NET START [BASIC | NWREDIR | WORKSTATION | NETBIND | NETBEUI | NWLINK] [/LIST] [/YES] [/VERBOSE]
(2)NET STOP
作 用:停止相应的服务.(不能在DOS-WIN中用)
命令格式:NET STOP [BASIC | NWREDIR | WORKSTATION | NETBEUI | NWLINK] [/YES]
在WIN98中NET命令还有一些参数是在98下才有的
其中有
(1)NET DIAG
作 用:运行MS的DIAGNOSTICS程序显示网络的DIAGNOSTIC信息
命令格式:NET DIAGNOSTICS [/NAMES | /STATUS]
(2)NET INIT
作 用:不通过绑定来加载协议或网卡驱动(不能在DOS-WIN中用)
命令格式:NET INITIALIZE [/DYNAMIC]
(3)NET LOGOFF
作 用:断开连接的共享资源(不能在DOS-WIN中用)
(4)NET LOGON
作 用:在WORKGROUP中登陆(不能在DOS-WIN中用)
命令格式:NET LOGON [user [password | ?] [/DOMAIN:name] [/YES] [/SAVEPW:NO]
(5)NET PASSWORD
作 用:更改你的网络登陆口令(不能在DOS-WIN中用)
命令格式:NET PASSWORD computer | /DOMAIN:name [user [oldpassword [newpassword]
Oracle114 发表于:2007.02.01 16:37 ::分类: (Oracle结构与管理 ) ::阅读:(402次) ::评论 (6) ::引用 (0)
===========================================================
转:如何学习Oracle-eygle的方法经验谈---eygle
===========================================================
以前就看过eygle的这篇文章,今早再次读来,仍有所获,故记之
我个人在学习中最大的问题在于急躁,还有会为失败找借口,而不是为成功找方法,比如学习计划经常没有按时完成,不是想方设法的去执行计划,而是会为某种原因饶过自己,比较赞同eygle的这句话"如果你觉得掌握的东西没有别人多,那么也许就是因为,你不如别人勤奋",谨记.
原文如下:
作者:
eygle 发表于 2005-08-08 09:40 最后更新于 2006-12-11 12:14 |English VersionEnglish Version版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明。http://www.eygle.com/archives/2005/08/ecinieoracleouo.html  查看全文
Oracle114 发表于:2007.02.01 09:46 ::分类: (生活 ) ::阅读:(98次) ::评论 (0) ::引用 (0)
===========================================================
SGA与共享内存
===========================================================
<深入浅出ORACLE>P118中讲述SGA的设置在LINUX/UNIX上和一个操作系统内核参数(shmmax)有关。
文章指出该内核参数定义的是系统允许的单个共享内存段的最大值,而非共享内存的大小;该参数设置小于SGA设置时,SGA将被成功地分配在多个共享内存段中。推荐通过调整SHMMAX设置,将SGA限制在一个共享内存段中。
从理论上可以理解上述内容,但由于没有测试环境,暂记录于此,等这两天装好REDHAT后再测试,不懂UNIX,看来万里长征刚迈出第一步。
另:查看PUB上对于多共享段对ORACLE性能的影响,不甚理解,同时对BITI大师由衷的赞!
参考:
Oracle数据库管理区->关于Linux 下kernel.shmmax 的设置问题
http://www.itpub.net/551203,1.html
Oracle专题深入讨论->关于Linux 下kernel.shmmax
http://www.itpub.net/551229.html
上面文章需再次研读,读两次还读不懂,汗...
---------------------------------------------------------------------------------------------------
后记,本来用google搜一下ipcs的用法,第一个链接竟是eygle大师的,粗略的看了一下,和书本上的大同小异,看来以后要天天看eygle的blog,这样以后他出的书就不用买了,省钱啦 ^_^
http://www.eygle.com/archives/2005/11/whats_mean_linux_shmmax.html
Oracle114 发表于:2007.01.24 09:58 ::分类: (Oracle结构与管理 ) ::阅读:(74次) ::评论 (0) ::引用 (0)
===========================================================
关于NT系统中,ORACLE的SGA粒度的疑问--??
===========================================================
读eygle的书<深入浅出oracle>第四章P110,其提到
----------------------------
自9i开始,引入新的初始化参数db_cache_size;该参数定义主Block Size(db_block_size定义的块大小)的default缓冲池的大小;
Db_cache_size最小值为一个粒度(granule)。
粒度(granule):粒度是连续虚拟内存分配的单位,粒度是9i新引入的参数,其大小取决于SGA_MAX_SIZE参数所规定的SGA总的大小
当SGA<128M时,粒度值为4M;否则粒度值为16M
粒度大小受内部隐含参数_ksmg_granule_size的控制
----------------------------
测试平台:windows2003+oracle9.2.1.0
在我的测试系统试验粒度值和SGA的大小关系,发现上面的结论不同,不知是不是自己测试的问题???还是说这个结论是对UNIX系统而言???
请看测试过程:
SQL> show sga
Total System Global Area 319888364 bytes
Fixed Size 453612 bytes
Variable Size 310378496 bytes
Database Buffers 8388608 bytes
Redo Buffers 667648 bytes
SQL> set linesize 120
SQL> col name for a30
SQL> col value for a20
SQL> col describ for a60
SQL> SELECT x.ksppinm NAME, y.ksppstvl VALUE, x.ksppdesc describ
2 FROM SYS.x$ksppi x, SYS.x$ksppcv y
3 WHERE x.inst_id = USERENV (‘Instance‘)
4 AND y.inst_id = USERENV (‘Instance‘)
5 AND x.indx = y.indx
6 AND x.ksppinm LIKE ‘%&par%‘
7 /
Enter value for par: _ksmg_granule_size
old 6: AND x.ksppinm LIKE ‘%&par%‘
new 6: AND x.ksppinm LIKE ‘%_ksmg_granule_size%‘
NAME VALUE DESCRIB
------------------------------ -------------------- ---------------------------
--------------------------------
_ksmg_granule_size 8388608 granule size in bytes
SQL> alter system set sga_max_size=100M scope=spfile;
System altered.
SQL> startup force
ORACLE instance started.
Total System Global Area 114367248 bytes
Fixed Size 453392 bytes
Variable Size 109051904 bytes
Database Buffers 4194304 bytes
Redo Buffers 667648 bytes
数据库装载完毕。
数据库已经打开。
SQL> SELECT x.ksppinm NAME, y.ksppstvl VALUE, x.ksppdesc describ
2 FROM SYS.x$ksppi x, SYS.x$ksppcv y
3 WHERE x.inst_id = USERENV (‘Instance‘)
4 AND y.inst_id = USERENV (‘Instance‘)
5 AND x.indx = y.indx
6 AND x.ksppinm LIKE ‘%&par%‘
7 /
输入 par 的值: _ksmg_granule_size
原值 6: AND x.ksppinm LIKE ‘%&par%‘
新值 6: AND x.ksppinm LIKE ‘%_ksmg_granule_size%‘
NAME VALUE DESCRIB
------------------------------ -------------------- ----------------------------
--------------------------------
_ksmg_granule_size 4194304 granule size in bytes
-----------------------------
结论:
从上面的过程可以看出,当SGA_MAX_SIZE约300M时,粒度大小为8M,非不是书本上所说的16M
zouzhiyou 不会游泳的鱼提示参考--oracle 10g release 2 concepts中的一段话,如下:
Granule size is determined by total SGA size. On most platforms, the size of a granule
is 4 MB if the total SGA size is less than 1 GB, and granule size is 16MB for larger
SGAs. Some platform dependencies arise. For example, on 32-bit Windows, the
granule size is 8 M for SGAs larger than 1 GB.
eygle说---这些参数和平台/版本都有关系,具体含义及Oracle的管理方式明白了就好,其它的根据平台和版本自己查询一下就知道了。
看来书本上的很多结论必须自动动手测试,不然只管记结论,有时是会犯错误的
http://www.itpub.net/showthread.php?s=&threadid=709150
Oracle114 发表于:2007.01.22 10:43 ::分类: (Oracle结构与管理 ) ::阅读:(97次) ::评论 (0) ::引用 (0)
===========================================================
怎样把经常使用的小表存放在KEEP缓冲区中
===========================================================
1)分配keep缓冲区
alter system set db_keep_cache_size = 20m;
2)把表存放在keep中
create table test (a nuber) storage (buffer_pool keep);
或者
alter table test storage(buffer_pool keep);
insert into test values (1);
或者查询记录
select * from test;
3)查看进行了几次物理读,并且在哪个缓冲区里读:
select name,physical_reads,db_block_gets + consistent_gets mem from v$buffer_pool_statistics
where name=‘KEEP‘;
4)再查询表记录,然后观察进行了几次物理读,并且在哪个缓冲区里读:
select * from test;
select name,physical_reads,db_block_gets + consistent_gets mem from v$buffer_pool_statistics
where name=‘KEEP‘;
注:
1)对表test就行访问时都在db_cache_pool操作。如果没有分配b_keep_cache_size则不会放在keep缓冲区中。
2)如果在把表的内容放入KEEP缓冲区之前,已经对表就行访问,这时数据会放在DB_CACHE_SIZE中。则每次进行数据读取的时候,都从DB_CACHE_SIZE中读取,可以使用如下命令,把DB_CACHE_SIZE中数据清空:
ALTER SYSTEM FLUSH BUFFER_CACHE;
3)alter system flush shared_pool;使用命令刷新共享池,会造成重新分析sql语句。
请参考:
http://www.unixgroup.net/viewtopic.php?p=11639#11639
Oracle114 发表于:2007.01.22 10:40 ::分类: (Oracle结构与管理 ) ::阅读:(101次) ::评论 (0) ::引用 (0)
===========================================================
燃油附加费本月21日起将首次下调
===========================================================
成品油调价之路
2006年
3月26日 上调汽油出厂价格每吨300元;
上调柴油出厂价格每吨200元;
上调航空煤油出厂价每吨300元;
2005年
7月23日 上调汽油出厂价格每吨300元;
上调柴油出厂价格每吨250元;
上调航空煤油出厂价格每吨300元;
6月25日 上调汽油出厂价格每吨200元;
上调柴油出厂价格每吨150元;
上调航空煤油出厂价格每吨300元;
5月23日 降低汽油出厂价格每吨150元;
5月10日 上调柴油出厂价格每吨150元;
3月23日 上调汽油出厂价格每吨300元;
随着国际油价的整体回落,旅客每次乘坐飞机必须支付的燃油附加费也终于开始下调了。发改委昨天对外正式宣布,800公里以下航段由现行每位旅客60元降低到50元,800公里(含)以上航段由现行每位旅客100元降低到80元。调整后的标准自2007年1月21日起执行(以出票时间为准)。
按照征收燃油附加费的新标准,800公里以下航段的降幅为16.7%,800公里以上航段的降幅为20%。对于普通的乘客而言,这无疑减轻了出行成本,但对于国内的各大航空公司而言,这显然将减少一笔不菲的收益。航空公司均有微词。
油价两次下调诱发
随着国际原油价格从去年最高位每桶88美元到跌破52美元,新年伊始,本月1日起中航油通过调整综合采购成本,国内航油销售价每吨下调180元,航空公司首次迎来航油价格的回落。
14日又传来利好消息,发改委发出通知,“2007年以来,受欧美地区暖冬、取暖用油需求下降,及美国成品油库存大幅增加等因素影响,国际市场油价出现大幅回落。1月11日,WTI原油期货价格降至2005年6月以来的最低点每桶51.9美元。根据国际市场油价变化情况,近日国家发展改革委发出通知,决定自2007年1月14日起将汽油价格每吨降低220元。同时,航油出厂价每吨降低90元。”下调后,航油出厂价回落至每吨5450元。
一个月内,航油价格两次下调,下调金额270元,下调幅度不到5%。时隔三天,已恢复征收了近一年半的燃油附加费也首次随之下调。发改委昨天在其官方网站的显要位置,解释了此次下调燃油附加费的原因,“根据近期国内航空煤油价格变动情况,国家发展改革委、民航总局下发通知,适当降低国内航线旅客运输燃油附加收取标准。”
航空公司一片抱怨
“航油价格刚刚下跌还不到一个月,燃油附加费就下调了。航油价格上涨了那么多次,才给航空公司调高了两次燃油附加费”,“航油价格下跌不到5%,燃油附加费800公里以下航段的降幅为16.7%,800公里以上航段的降幅为20%。”实在想不通的航空公司高管们抱怨连连。
去年,国内航空公司的航油成本增加了70亿元,而燃油附加费只消化了47亿元。一位航空公司的高层人士告诉早报记者,当燃油附加费上调的时候,航空公司的票价水平实际上会略有下降。整体收益上随有增长,但并不是1+1=2,而是小于2。尤其在航空旅行的淡季,票价水平更低,加之此次燃油附加费再降低,航空公司无疑雪上加霜。
中航油垄断再遭诟病
事实上,航空公司并不希望燃油附加费一涨再涨,这可能会减弱市场需求。而航油价格不能与国际市场接轨,处于垄断地位的中航油早已成为各大航空公司的众矢之的。
中航油作为航空公司最大的供油大户,一直以来拥有着垄断的地位。由于中航油的销售价格完全由政府制定,价格往往滞后于国际油价的变化。而具有讽刺意味的是,一位同样来自航空公司的高层人士开玩笑地说,当国际油价上涨的时候,中航油的销售价跑步接轨国际油价,国际油价早在去年10月已开始回落,中航油的销售价下调这个月才姗姗来迟。
据早报记者了解,中航油从中石油、中石化等上游企业采购的航油称为出厂价,国家在保证中航油一定利润的前提下,再制定一个进销差价,出厂价加上进销差价就是卖给航空公司的价格。
此前,全国所有的机场进销差价统一为每吨480元,去年4月1日,民航总局的《航空煤油销售价格改革方案(试行)》正式开始实施,根据方案,内地航空公司内地航班的航油进销差价,由政府定价改为以政府指导价为主。民航总局依据供油公司的供油成本、市场供求状况、航空公司的承受能力等,确定进销差价基准价及浮动幅度。
其中浦东机场最低,为230元。然而这样的一个价格仍然受到航空公司的不满。一位知情人士昨向早报记者透露,这样的价格仍然过高,其实浦东机场的航油公司进销差价只需要100多元即可以实现赢利,其中的暴利可想而知。
航空公司在中航油垄断的局面下,只能承受着巨大的航油成本压力。早报记者昨在采访中了解到,目前中央有关方面已开始着手考虑,将上游的中石油、中石化等企业由于国际油价上涨,带来的利润增长,拿出一部分给下游的航空公司,以减缓航空公司的航油成本压力,但目前尚无具体实施的时间表。
是否再调看国际油价
海通证券分析师马婴告诉早报记者,按照上周五新加坡的航油现货交易价,每桶价格为67.75美元,完税后销售给中国国内的航空公司,价格大约在每吨5400元人民币左右,这与14日航油出厂价每吨5450元基本持平,所以航油出厂价近期不会再进行调整,燃油附加费也不可能调整。
马婴分析,如果国际原油价格进一步回落,航油销售价格每吨再降低200到300元,燃油附加费可能会再下调。
Oracle114 发表于:2007.01.19 12:03 ::分类: (生活 ) ::阅读:(61次) ::评论 (0) ::引用 (0)
===========================================================
system表空间急剧增大原因分析
===========================================================
system表空间增大是正常的,但急剧增大是不合理的。
1有可能是用户对象错误的放在系统表空间中
2也可能是system表空间的UNDO过大
3还有可能和高级复制的空间使用有关
可通过如下语句查看一下是不是有应用的段放到了SYSTEM中:
select OWNER,SEGMENT_NAME,SEGMENT_TYPE,BYTESfrom DBA_SEGMENTSwhere TABLESPACE_NAME=‘SYSTEM‘ and OWNER not in (‘SYS‘,‘SYSTEM‘)
通过如下查询语句查看找出系统表空间中占用空间最多的Top9对象
SELECT *
FROM (SELECT BYTES, segment_name, segment_type, owner
FROM dba_segments
WHERE tablespace_name = ‘SYSTEM‘
ORDER BY BYTES DESC)
WHERE ROWNUM < 10
高级复制会使用 sys.IDL_UB1$
摘自,Database Administrator’s Guide 第70页
If you use Advanced Replication and intend to set up a large number of replicated
objects, then you are required to monitor the following data dictionary tables with
the SQL SELECT command:
n ARGUMENT$
n IDL_CHAR$
n IDL_UB1$
n IDL_UB2$
n IDL_SB4$
n I_ARGUMENT1
n I_SOURCE1I$
n SOURCE$
n TRIGGER
If necessary, increase storage parameters to accommodate storage requirements of
large numbers of replicated objects.
请参考eygle的文章(http://www.eygle.com/archives/2007/01/idl_ub1_table.html)
系统对象IDL_UB1$表的含义及作用
在ITPUB上有朋友遇到SYSTEM表空间快速扩展的问题
系统表空间异常扩展的情况遇到过很多:
有的和用户表空间或对象分配不当有关
有的和高级复制的空间使用有关....
经过如下代码查询,可以找出系统表空间中占用空间最多的Top9对象:
col segment_name for a25col owner for a10SELECT *FROM (SELECT BYTES, segment_name, segment_type, ownerFROM dba_segmentsWHERE tablespace_name = ‘SYSTEM‘ORDER BY BYTES DESC)WHERE ROWNUM < 10/
这个朋友的Top9对象为:
1 3082174464 IDL_UB1$ TABLE SYS2 63979520 SOURCE$ TABLE SYS3 12075008 IDL_UB2$ TABLE SYS4 7749632 DEPENDENCY$ TABLE SYS5 7356416 I_DEPENDENCY2 INDEX SYS6 6438912 I_DEPENDENCY1 INDEX SYS7 5521408 I_IDL_UB11 INDEX SYS8 4341760 IDL_SB4$ TABLE SYS9 3555328 I_ACCESS1 INDEX SYS
我们注意到占用空间最大的对象是IDL_UB1$系统表,空间占用近3G,那么这个表是做什么用的呢?
从sql.bsq中我们可以找到这个表的创建语句:
create table idl_ub1$ /* idl table for ub1 pieces */( obj# number not null, /* object number */part number not null,/* part: 0 = diana, 1 = portable pcode, 2 = machine-dependent pcode */version number, /* version number */piece# number not null, /* piece number */length number not null, /* piece length */piece long raw not null) /* ub1 piece */storage (initial 10k next 100k maxextents unlimited pctincrease 0)/
idl_ub1$表是用来存储PL/SQL的代码单元的,包括DIANA等,IDL在这里代表Interface Definition Language.
这个对象的含义可以从Ixora找到一点提示:
It is an intermediate language in which the structure of database tables and the logic of PL/SQL program units can be consistently represented as attributed trees. Oracle uses the DIANA IDL, which comes from compilers for the Ada programming language. DIANA stands for Descriptive Intermediate Attributed Notation for Ada. Anyway, this is one of four tables in the data dictionary used to store the DIANA for PL/SQL program units, and the database objects that they reference.
在高级复制中会用到这个表,所以可能导致这个表快速增长,在Oracle10g之前,高级复制需要考虑的事情的确很多。
请参考:
ITPUB论坛http://www.itpub.net/showthread.php?s=&threadid=707073
IXORA网站http://www.ixora.com.au/q+a/dd.htm
Oracle114 发表于:2007.01.19 10:04 ::分类: (Oracle结构与管理 ) ::阅读:(174次) ::评论 (0) ::引用 (0)
===========================================================
“姐夫戏小姨,本来不稀奇”——笑料
===========================================================
从前有位秀才,某天随太太回娘家,向岳父拜寿,
因一时高兴多喝了几杯,当场醉倒,被送回书房休息。
没多久,他的小姨子到书房拿东西,见姐夫睡的枕头掉地上,
便替他捡起来,顺手扶起他的脖子,想替他枕好,
没想到秀才人醉心不醉,一见机会难得,便拉着小姨子不放.
小姨子用力挣脱后,愤怒之余,就在墙上题诗以泄愤:
[好心来扶枕,为何拉我衣?若非姊姊面,一定是不依。该死!该死! ]
秀才等小姨子走后,下床一看,觉得很不好意思,便题诗辩白:
[贴心来扶枕,醉心拉你衣,只当是我妻,不知是小姨。失礼!失礼! ]
秀才题完后再睡,其妻见墙上诗句,不禁醋火中烧,也题诗一首:
[有意来扶枕,有心拉她衣,墙上题诗句,都是骗人地。彼此!彼此! ]
不久,小舅子也看到,不觉技痒,也提了一首:
[清心来扶枕,熏心拉她衣,姊妹虽一样,大的是你妻。清醒!清醒! ]
后来被岳父发现,不禁大怒,也提一首诗,以作警告:
[不该来扶枕,不该拉她衣,两个都有错,下次不可以。切记!切记! ]
岳母因心疼女婿,只得题诗一首诗,来打圆场:
[既已来扶枕,也已拉她衣,姐夫戏小姨,本来不稀奇。别提!别提! ]
【原版】
续一:
小姨的未婚夫看到后,也气愤的题了一首:
可怜来扶枕,居然拉她衣,你敢戏小姨,我要戏你妻。公平!公平!
续二:
秀才自己的老爸看到后,也题了一首:
应该来扶枕,也可拉她衣,反正大已娶,多个更便宜!努力,努力!
续三:
秀才的老妈看到老头子题的后,觉得老头子的想法很好,也题了一首:
既然来扶枕,拼命拉她衣。一个好洗碗,一个去拖地!幸福,幸福!
续四:
路人甲:
既无人扶枕,如何来拉衣,偶想戏小姨,可惜还无妻。着急!着急!
续五:
路人乙:
无人来扶枕,何处拉她衣。小子本无妻,还想戏小姨!做梦,做梦!
续六:
路人丙:
小姨来扶枕,我就拉她衣。不只是小姨,还戏小小姨!加油,加油!
续七:
路人丁:
贤妻来扶枕,随便拉她衣。如果娶贤妻,何处戏小姨?郁闷!郁闷!
路人辛:
贤妻来扶枕,只有拉她衣。贤妻无姐妹,何处戏小姨?可惜!可惜!
路人戊:
秀才系人妖,木有小JJ,如若能接上,定能戏小姨。可悲,可悲!
路人己:
医学真神奇,秀才你莫急,接个狗东西,照样戏小姨。简单!简单!
Oracle114 发表于:2007.01.19 09:17 ::分类: (生活 ) ::阅读:(76次) ::评论 (0) ::引用 (0)
===========================================================
关于排序、sort_area_size、临时表空间
===========================================================
简单陈述一下:
针对每个session,排序首先会使用sort_area_size ,如果不足则会使用临时表空间。但这里面又到底是怎么一个过程呢?
假设sort_area_size = 100k,正好能盛下100条记录进行排序
当排序记录小于等于100条,ok,所有排序在内存中进行,很快
但若超过100条,则会使用临时表空间(利用磁盘进行)
我们选取一个临界值来说明,假设需要排序的记录有10010条
这个时候我们进行的排序会分为101组进行
每读100条进行一次小组排序,然后写入磁盘,第101组只有10条,排序后也写入磁盘
这时进行第二次排序,这次排序将在前100小组里面各抽取一条进行排序。《按照我个人的猜测,应该是排好后每写入一条入磁盘则将该记录所在小组重新抽取一条出来进行排序(这时是有序记录组里面所以很快)》。当这个过程完成后,这时所需要的磁盘空间大约为 实际记录存储空间的2倍(这也是多数书上提到的排序空间大约是记录空间的2倍的原因)
<<上面的过程实际上就是外排序过程,任何译本关于算法分析的书都会讲,把要排序的对象分割为内存可以容纳的小段(sort run),然后每个sort run都放到sort area里面去排序,排序结果作为中间信息放在临时表空间的临时段内,由于分段排序的结果当然不会是最终要求的排序结果,所以还要经过一个merge的过程,才会得到最终排序结果,原理大概是比较每个sort run的第一名,取出领先者,然后该sort run的第二名顶上,继续上述过程直到取完。merge过程也有很多简化算法。>>
由于还剩下10条记录,于是这10条记录需要跟前面排序的10000条记录进行排序合并,这个代价也是相当大的!
所以,我们通常推荐,假如你需要排序的记录最大为100万条,则sort_area_size最小要能装下1000条,否则如上面的例子,那多余的10条,仅仅10条将会带来巨大的代价!
如果,设置的极度不合理的情况下,排序记录达到了 sort_area_size所能容纳的三次方以上,比如上面例子中排序需要100万记录
那么同样的,重复这个过程,当每一万条记录如上排序后,再如上从这100小组(每组10000条记录)各抽一条进行排序……
在这个过程中,磁盘的消耗和时间的代价大家都应该有个感性认识了
所以,我们建议: sprt_area_size 所能容纳记录数至少大于排序记录数的 平方根
请参考:http://www.itpub.net/84823.htmlbiti_rainy
Oracle114 发表于:2007.01.16 17:51 ::分类: (Oracle结构与管理 ) ::阅读:(95次) ::评论 (0) ::引用 (0)
===========================================================
程序员35岁前成功的12条黄金法则
===========================================================
作者: 钟余帆,  出处:博客, 责任编辑: 金璞,  2007-01-01 08:00
http://searchdatabase.techtarget.com.cn/analysis/168/3028668.shtml
一艘没有航行目标的船,任何方向的风都是逆风
第一章:一个目标
一艘没有航行目标的船,任何方向的风都是逆风
1、你为什么是穷人,第一点就是你没有立下成为富人的目标
2、你的人生核心目标是什么?
杰出人士与平庸之辈的根本差别并不是天赋、机遇,而在于有无目标。
3、起跑领先一步,人生领先一大步:成功从选定目标开始
4、贾金斯式的人永远不会成功
为什么大多数人没有成功?真正能完成自己计划的人只有5%,大多数人不是将自己的目标舍弃,就是沦为缺乏行动的空想
5、 如果你想在35岁以前成功,你一定在25至30岁之间确立好你的人生目标
6、 每日、每月、每年都要问自己:我是否达到了自己定下的目标
第二章:两个成功基点
站好位置,调正心态,努力冲刺,35岁以前成功
(一)人生定位
1、 人怕入错行:你的核心竞争力是什么?
2、 成功者找方法,失败者找借口
3、 从三百六十行中选择你的最爱
人人都可以创业,但却不是人人都能创业成功
4、 寻找自己的黄金宝地
(二)永恒的真理:心态决定命运,35岁以前的心态决定你一生的命运
1、 不满现状的人才能成为富翁
2、 敢于梦想,勇于梦想,这个世界永远属于追梦的人
3、 35岁以前不要怕,35岁以后不要悔
4、 出身贫民,并非一辈子是贫民,只要你永远保持那颗进取的心。中国成功人士大多来自小地方
5、 做一个积极的思维者
6、 不要败给悲观的自己
有的人比你富有一千倍,他们也会比你聪明一千倍么?不会,他们只是年轻时心气比你高一千倍。
人生的好多次失败,最后并不是败给别人,而是败给了悲观的自己。
7、 成功者不过是爬起来比倒下去多一次
8、 宁可去碰壁,也不要在家里面壁
克服你的失败、消极的心态
(1) 找个地方喝点酒
(2) 找个迪厅跳跳舞
(3) 找帮朋友侃侃山
(4) 积极行动起来
第三章:三大技巧
1、管理时间:你的时间在哪里,你的成就就在哪里。
把一小时看成60分钟的人,比看作一小时的人多60倍
2、你不理财,财不理你
3、自我管理,游刃有余
(1) 创业不怕本小,脑子一定要好
(2) 可以开家特色店
(3) 做别人不愿做的生意
第四章:四项安身立命的理念
35岁以前一定要形成个人风格
1、做人优于做事
做事失败可以重来,做人失败却不能重来
(1) 做人要讲义气
(2) 永不气馁
2、豁达的男人有财运,豁达的女人有帮夫运
35岁以前搞定婚姻生活
3、忠诚的原则:35岁以前你还没有建立起忠诚美誉,这一缺点将要困扰你的一生
4、把小事做细,但不要耍小聪明
中国人想做大事的人太多,而愿把小事做完美的人太少
第五章:五分运气
比尔·盖茨说:人生是不公平的,习惯去接受它吧
1、人生的确有很多运气的成人:谋事在人,成事在天:中国的古训说明各占一半
2、机会时常意外地降临,但属于那些不应决不放弃的人
3、抓住人生的每一次机会
机会就像一只小鸟,如果你不抓住,它就会飞得无影无踪
4、 者早一步,愚者晚一步
第六章:六项要求
1、智慧
(1)别人可你以拿走你的一切,但拿不走你的智慧
(2)巧妙运用自己的智慧
(3)智者与愚者的区别
2、勇气
(1)勇气的力量有时会让你成为"超人"
(2)敢于放弃,敢于"舍得"
3、培养自己的"领导才能、领袖气质"
(1) 激情感染别人
(2) "三o七法则"实现领袖气质
(3) 拍板决断能力
(4) 人格魅力
4、创造性:不要做循规蹈矩的人
25-35岁是人生最有创造性的阶段,很多成功人士也都产生在这一阶段
5、明智
(1) 知道自己的长处、短处,定向聚焦
(2) 尽量在自己的熟悉的领域努力
6、持之以恒的行动力:在你选定行业坚持十年,你一定会成为大赢家
第七章:七分学习
1、知识改变命运
2、35岁以前学会你行业中必要的一切知识
a) 每天淘汰你自己
b) 在商言商
3、太相信的书人,只能成为打工仔
4、思考、实践、再思考、再实践
第八章:八分交际
朋友多了路好走
1、智商很重要,情商更重要:35岁以前建立起人际关系网
2、人脉即财脉:如何搞好人际关系
3、交友有原则
4、善于沟通:35岁以前要锻炼出自己的演讲才能
第九章:九分习惯
习惯的力量是惊人的,35岁以前养成的习惯决定着你的成功的大小
1、积极思维的好习惯
2、养成高效工作的好习惯
(1) 办公室
(2) 生活可以不拘小节,但要把工作做细
(3) 学习聆听,不打断别人说话
3、养成锻炼身体的好习惯
4、广泛爱好的好习惯
5、快速行动的好习惯
第十章:十分自信
1、自信是成功的精神支柱
2、自信方能赢得别人的信任
3、把自信建立在创造价值的基础上
4、如何建立自信
(1) 为自己确立目标
(2) 发挥自己的长处
(3) 做事要有计划
(4) 做事不拖拉
(5) 轻易不要放弃
(6) 学会自我激励
(7) 不要让自己成为别人
第十一章 11个需要避开的成功陷阱
1、只有功劳,没有苦劳
2、不要"怀才不遇",而要寻找机遇
3、不要想发横财
4、不要为钱而工作,而让钱为你工作
5、 盲目跟风,人云亦云,人做我也做
6、 小富即安,不思进取,知足常乐
7、 承认错误而非掩饰错误
8、 脚踏实地而非想入非非
9、 野心太大而不是信心十足
10、反复跳槽不可取
11、眼高手低
12、不择手段
第十二章 十二分努力
没有人能随随便便成功
1、小不是成功,大不是成功,由小变大才是成功
2、中国社会进入微利时代:巧干+敢干+实干=成功
3、努力尝试就有成功的可能
4、做任何事情,尽最大努力
5、把事情当成事业来做
6、我看打工者
7、祝你早日掘到第一桶金=======================================================================================================================================