Sybase IQ-15_1本地登录问题之interfaces文件配置及数据文件权限

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Sybase IQ-15_1本地登录问题之interfaces文件配置及数据文件权限相关的知识,希望对你有一定的参考价值。

    环境描述:
    操作系统:rhel 5.4
    数据库版本:Sybase IQ-15_1
    问题描述:上海一客户Sybase IQ-15_1数据库主机重启,Sybase IQ-15_1数据库启动异常,由于数据库管理员Sybase IQ-15_1
经验欠缺,登录不了本地Sybase IQ-15_1控制台。
    问题处理过程:
    一、首先解决iqdemo库的登录问题
    1、通过ps -ef|grep sybase发现有iqdemo数据库进程
    2、临时配置操作系统本地LANG参数,export
    未配置操作系统LANG参数,登录报错如下:
Your sybase home directory is /opt/sybase. Check the environment variable BYBASE if it is not the one you want!
Using local name "zh_cn.DGB" definied in environment variable LANG locale name "zh_CN.GBK" doesn't exist in your
/opt/sybase/locales/locales.dat file
An error occurred when attempting to allocate localization-related structures.
该报错提示字符集zh_CN.GBK在/opt/sybase/locales/locales.dat 中不存在
    3、进入sybase iq安装目录/opt/sybase/,找到interfaces文件,执行more interfaces无内容
    interfaces配置如下(IQ是主机名,2368是demo库控制文件iqdemo.cfg文件中的网络端口号,注意interfaces配置格式):
iqdemo
    master tcp ether IQ 2638
    query tcp ether IQ 2638
    --没有配置interfaces时,登录报错如下:
CT-LIBRARY error:
    ct_connect():directory service layer:internal directory control layer error:Requested server name not found.

    --当interfaces配置主机名DNS解析不正确时(这里指的是master query前面的tab空格),登录报错:
CT-LIBRARY error:
     ct_connect():directory service layer:internal directory control layer error:Invalid syntax found in interfaces file.
    --当interfaces配置格式不正确时,登录报错:
CT-LIBRARY error:
    ct_connect():network packet layer:internal net library error:Protocol driver call to parse connection information failed
    --等interfaces配置网络端口不正时,登录报错:
CT-LIBRARY error:
    ct_connect():directory service layer:internal directory control layer error:Net-Lib protocol driver call to connect two endpoints failed
    4、interfaces文件配置正确后,使用sybase用户登录sybase iq控制台
$iqsql -UDBA -Psql -Siqdemo
>
    二、处理用户业务数据库启动权限问题
    1、sybase用户尝试启动tpaic库:start_iq @/opt/sybase/tpaic/tpaic.cfg /opt/sybase/tpaic/tpaic.db,启动报错:
技术分享图片
    2、root用户通过ls -l执行:ls -l /opt/sybase/tpaic/DSMSYS01.iq,发现该文件是个软连接,链接到/dev/raw/raw10
    3、root用户执行ls -l /dev/raw/raw*,发现/dev/raw/raw*均为root:root权限
    4、经与管理员沟通后,客户接受进行raw设备权限的临时修改,修改命令如下:
chown sybase:sybase /dev/raw/raw10
chown sybase:sybase /dev/raw/raw9
chown sybase:sybase /dev/raw/raw8
chown sybase:sybase /dev/raw/raw7
chown sybase:sybase /dev/raw/raw6
chown sybase:sybase /dev/raw/raw5
chown sybase:sybase /dev/raw/raw4
chown sybase:sybase /dev/raw/raw3
chown sybase:sybase /dev/raw/raw2

chmod 0660 /dev/raw/raw2
chmod 0660 /dev/raw/raw3
chmod 0660 /dev/raw/raw4
chmod 0660 /dev/raw/raw5
chmod 0660 /dev/raw/raw6
chmod 0660 /dev/raw/raw7
chmod 0660 /dev/raw/raw8
chmod 0660 /dev/raw/raw9
chmod 0660 /dev/raw/raw10
    5、再次尝试使用sybase用户启动sybase iq数据库
技术分享图片
技术分享图片
    6、登录tpaic库
技术分享图片
    到此,问题解决完毕!

以上是关于Sybase IQ-15_1本地登录问题之interfaces文件配置及数据文件权限的主要内容,如果未能解决你的问题,请参考以下文章

如何设置sybase数据库的用户权限

如何设置sybase数据库的用户权限

windows下sybase忘sa密码

Sybase IN 和 OUT 参数

如何设置sybase数据库的用户权限

在sybase11.5的sybase central中无法用sa用户登录;sql advantage中也无法登陆,同样提示错误。错误如下