存档
以前写的windows平台上安装Sybase ASE15.0.3的文档,内容比较详细。与大家共享一下!
主要包括:
一、安装前的准备工作
二、安装Sybase程序
三、升级到 Sybase 15.0.3 ESD #3
四、安装Sybase数据库服务
五、安装后的配置工作
下面是第二章:安装Sybase ASE程序
二、安装Sybase ASE程序
二、安装Sybase ASE程序
1、安装过程介绍
(1)Sybase ASE的版本介绍
关于sybase ASE的安装过程,先来介绍一下sybase中发行版本的三个术语:
以前写的windows平台上安装Sybase ASE15.0.3的文档,内容比较详细。与大家共享一下!
主要包括:
一、安装前的准备工作
二、安装Sybase程序
三、升级到 Sybase 15.0.3 ESD #3
四、安装Sybase数据库服务
五、安装后的配置工作
下面是第一章:安装前的准备工作
一、 安装前的准备工作
ASE自12.5.1开始在内部处理中支持xml;自15.x版本xml功能得到进一步完善。
ASE15.x中使用xml不需要额外的license。
一、导出xml文档
在ASE的select语句中加入关键字for xml即可以xml格式显示结果集。
语法:
限制:
- for xml select语句不能包括into_clause、compute_clause、read_only_clause、isolation_clause、browse_clause 或 plan_clause。
- 不能在命令create view、declare cursor、subquery 或 execute command中指定 for xml select。
- 不能在以下命令中使用for xml 子查询:for xml select、create view、declare cursor、select into;亦不能将其用作定量判定子查询,如 any/all、in/not in、exists/not exists。
下面举例导出xml格式的SQL查询结果集:
mark:
rand2() ASE 15.0.2
newid() ASE 12.5.1
rand() Any Version
set rowcount N
select * from table order by rand(convert(int,row1)+datepart(ms,getdate()))
set rowcount 0
本博客已经有一篇关于的:Sybase ASE 统计当前执行的SQL语句的存储过程!
现在提供另外一种方法:使用系统存储过程sp_monitor查看当前数据库连接中正在执行的SQL语句信息!
sp_monitor connection
在执行上面语句之前需要启用对connection的监控, 执行:sp_monitor enable,connection。可以在监控完成后关闭该选项。
设置参数:max SQL text monitored为2048,该参数为静态参数,需要重启ASE。
sp_monitor connection的结果默认按照连接占用的cpu时间和等待时间的总和进行逆序排序。
sp_monitor connection的第二个参数有:cpu , diskio , elapsed time 分别表示按照cpu时间、物理读取次数、cpu时间+等待时间 进行逆序排序。
在查看完正在执行的SQL语句内容后,关闭对connection的监控以减少对生产服务器的影响。
执行的语句如下:
sp_configure "max SQL text monitored",2048
go
--reboot ASE
--...
sp_monitor enable,connection
go
sp_monitor connection
go
-- some SQL statement
-- ...
sp_monitor disable,connection
go
以将dbo创建的所有表授予相应权限给普通用户userA为例。
将dbo拥有的表的相应权限(select/insert/update/delete)授予给普通用户userA,使用以下SQL生成授权语句:
select 'grant select on ' + user_name(uid) + '.' + name + ' to userA' from sysobjects where type='U' and uid=user_id('dbo')
union all
select 'grant insert on ' + user_name(uid) + '.' + name + ' to userA' from sysobjects where type='U' and uid=user_id('dbo')
union all
select 'grant update on ' + user_name(uid) + '.' + name + ' to userA' from sysobjects where type='U' and uid=user_id('dbo')
union all
select 'grant delete on ' + user_name(uid) + '.' + name + ' to userA' from sysobjects where type='U' and uid=user_id('dbo')
查看某张表的上用户的权限情况:
sp_helprotect table_name
查看用户所拥有的对象权限情况:
sp_helprotect user_name
ASE全局环境变量@@servername保存当前的服务器名称。
假如将ASE服务器名称从ase1503test修改成ase1503xen,
下面是修改ASE服务器名称的步骤: