db_name和SID的长度限制

数据库的db_name和sid是有长度限制的...[@more@]

先看一下数据字典:

SQL> desc v$database
名称 是否为空? 类型
----------------------------------------- -------- ----------------------------

DBID NUMBER
NAME VARCHAR2(9)
............................

SQL> desc v$instance
名称 是否为空? 类型
----------------------------------------- -------- ----------------------------

INSTANCE_NUMBER NUMBER
INSTANCE_NAME VARCHAR2(16)
.......................

SQL>

在讲课的时候我经常强调db_name的长度不能超过8位,小于等于9位,尽管数据字典v$database里面记录的是9位,在10g以前的版本超过8位通过dbca建库时会有错误提示,尽管10g没有了提示,不过在建库之后会截断,从而会导致网络配置等引起的一系列问题(如果sid和db_name使用的是相同的名字);提到db_name顺便也介绍下SID,sid其实也有限制,在windows下它只能是由字母和数字组成,并且字母打头,不能有任何特殊字符,包括下划线。unix/linux下有没有此限制没太注意,另外通过查看数据字典发现SID的长度应该不能超过16位,不过没有测试过...有机会留意一下就是...v$instance的instance_name真实的记录的是SID而不是instance_name。有关这些名字的区别可以参考我之前写的一篇文章:

http://www.itpub.net/viewthread.php?tid=903624&highlight=

在windows下简单的测试了一下:

在创建db是指定了全局数据库名为25个a,sid为25个b,db成功创建之后相关参数如下:

SQL> select status from v$instance;

STATUS
------------
OPEN

SQL> show parameter db_name

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_name string aaaaaaaa
SQL> select instance_name from v$instance;

INSTANCE_NAME
----------------

--上面sid为null,可能是因为超过了16位的缘故造成的...
SQL> show parameter instance_name

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
instance_name string bbbbbbbbbbbbbbbbbbbbbbbbb
SQL> select *from global_name;

GLOBAL_NAME
--------------------------------------------------------------------------------

AAAAAAAA

SQL>

而和db_name相关的名字都被截断了,只保留了8位...db目前使用一切正常,是否有问题待观查...

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/19602/viewspace-1031563/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/19602/viewspace-1031563/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值