1. Sybase ASE概述与环境规划
Sybase ASE(Adaptive Server Enterprise)是SAP公司开发的企业级关系型数据库管理系统,以其高性能、高可靠性和强大的事务处理能力著称。Sybase ASE广泛应用于金融、电信、政府等关键行业。更多学习教程www.fgedu.net.cn
1.1 Sybase ASE版本说明
Sybase ASE目前主要版本为ASE 16.0,本教程以ASE 16.0为例进行详细讲解。
$ isql -Usa -Sfgedudb -V
Adaptive Server Enterprise/16.0 SP04 PL02/EBF 28900/P/x86_64/Enterprise Linux/ase160sp04pl02/3980/64-bit/OPT/Fri Apr 04 10:00:00 2026
Confidential property of SAP AG
1.2 环境规划
本次安装环境规划如下:
IP地址:192.168.1.51
数据库实例名:fgedudb
数据库服务器名:fgedudb
端口号:5000
数据库用户:sa
数据库安装用户:sybase
磁盘空间规划:
/sybase 50GB (软件安装目录)
/data/sybase 200GB (数据库数据)
/data/sybase/log 50GB (事务日志)
/backup/sybase 200GB (备份空间)
1.3 Sybase ASE核心特性
1. 高性能:优化的查询处理器和存储引擎
2. 高可用性:支持HA、集群等多种高可用方案
3. 事务处理:强大的OLTP事务处理能力
4. 安全性:完善的权限管理和加密功能
5. 可扩展性:支持分区表和并行处理
6. 兼容性:支持标准SQL和存储过程
7. 跨平台:支持Linux、Windows、Unix等
2. 硬件环境要求与检查
在安装Sybase ASE之前,需要对服务器硬件环境进行全面检查。学习交流加群风哥微信: itpux-com
2.1 最低硬件要求
CPU:64位x86处理器
内存:2GB
磁盘:10GB
推荐配置(生产环境):
CPU:8核心以上
内存:32GB以上
磁盘:500GB以上高速存储
网络:千兆网卡
高可用环境配置:
CPU:16核心以上
内存:64GB以上
磁盘:1TB以上SSD存储
网络:万兆网卡
2.2 系统环境检查
# cat /etc/redhat-release
Red Hat Enterprise Linux release 8.8 (Ootpa)
# 检查内核版本
# uname -a
Linux fgedudb01 4.18.0-477.10.1.el8_8.x86_64 #1 SMP Fri Apr 4 10:00:00 CST 2026 x86_64 x86_64 x86_64 GNU/Linux
# 检查内存信息
# free -h
total used free shared buff/cache available
Mem: 62Gi 2.0Gi 58Gi 256Mi 2.0Gi 59Gi
Swap: 31Gi 0B 31Gi
# 检查磁盘空间
# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/vg_system-lv_root 50G 2.5G 48G 5% /
/dev/sda2 1014M 150M 865M 15% /boot
/dev/mapper/vg_data-lv_data 200G 10G 190G 10% /data
/dev/mapper/vg_backup-lv_backup 200G 20G 180G 10% /backup
# 检查所需软件包
# rpm -qa | grep -E “libaio|libnsl|glibc”
libaio-0.3.112-1.el8.x86_64
libnsl-2.28-225.el8.x86_64
glibc-2.28-225.el8.x86_64
# 安装依赖包
# dnf install -y libaio libnsl glibc
2.3 内核参数配置
# vi /etc/sysctl.d/99-sybase.conf
# 添加以下参数
# 共享内存参数
kernel.shmmax = 34359738368
kernel.shmall = 8388608
kernel.shmmni = 4096
# 信号量参数
kernel.sem = 250 32000 100 128
# 文件描述符限制
fs.file-max = 655360
# 异步I/O限制
fs.aio-max-nr = 1048576
# 使内核参数生效
# sysctl -p /etc/sysctl.d/99-sybase.conf
# 输出示例:
kernel.shmmax = 34359738368
kernel.shmall = 8388608
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 655360
fs.aio-max-nr = 1048576
2.4 用户资源限制配置
# vi /etc/security/limits.conf
# 添加以下配置
sybase soft nofile 65535
sybase hard nofile 65535
sybase soft nproc 65535
sybase hard nproc 65535
sybase soft memlock unlimited
sybase hard memlock unlimited
sybase soft stack unlimited
sybase hard stack unlimited
# 配置PAM限制
# vi /etc/pam.d/login
session required pam_limits.so
# 验证配置
# su – sybase
$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 65535
max locked memory (kbytes, -l) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 65535
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) unlimited
cpu time (seconds, -t) unlimited
max user processes (-u) 65535
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
3. Sybase ASE数据库安装步骤
本节详细介绍Sybase ASE 16.0的安装过程。学习交流加群风哥QQ113257174
3.1 创建用户和组
# groupadd sybase
# 创建sybase用户
# useradd -g sybase -d /home/sybase -s /bin/bash -m sybase
# 设置密码
# passwd sybase
更改用户 sybase 的密码 。
新的 密码:
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
# 创建目录结构
# mkdir -p /sybase
# mkdir -p /data/sybase/{data,log}
# mkdir -p /backup/sybase
# 设置目录权限
# chown -R sybase:sybase /sybase
# chown -R sybase:sybase /data/sybase
# chown -R sybase:sybase /backup/sybase
# chmod -R 755 /sybase
# chmod -R 755 /data/sybase
# chmod -R 755 /backup/sybase
# 验证目录权限
# ls -la /sybase
总用量 0
drwxr-xr-x. 2 sybase sybase 6 4月 4 10:00 .
3.2 配置环境变量
# su – sybase
# 编辑环境变量文件
$ vi ~/.bash_profile
# 添加以下内容
export SYBASE=/sybase
export SYBASE_ASE=ASE-16_0
export SYBASE_OCS=OCS-16_0
export PATH=$SYBASE/$SYBASE_ASE/bin:$SYBASE/$SYBASE_OCS/bin:$PATH
export LD_LIBRARY_PATH=$SYBASE/$SYBASE_ASE/lib:$SYBASE/$SYBASE_OCS/lib:$LD_LIBRARY_PATH
export DSQUERY=fgedudb
export SYBASE_SYSAM=”SYSAM-2_0″
# 使环境变量生效
$ source ~/.bash_profile
# 验证环境变量
$ echo $SYBASE
/sybase
$ echo $DSQUERY
fgedudb
3.3 安装Sybase ASE软件
$ exit
# 解压安装包
# tar -xvf ase160_linuxx86_64.tgz -C /tmp
# 输出示例:
ase160_linuxx86_64/
ase160_linuxx86_64/setup.bin
ase160_linuxx86_64/response/
ase160_linuxx86_64/doc/
…
# 运行安装程序(图形界面)
# cd /tmp/ase160_linuxx86_64
# ./setup.bin
# 或使用静默安装
# ./setup.bin -i silent -f /tmp/response.ini
# 输出示例:
Preparing to install…
Extracting the installation resources from the installer archive…
Configuring the installer for this system’s environment…
Launching installer…
===============================================================================
SAP Adaptive Server Enterprise 16.0
===============================================================================
Installing…
————-
[==================|==================|==================|==================]
[——————|——————|——————|——————]
Installation Complete.
———————-
Congratulations! SAP Adaptive Server Enterprise 16.0 has been successfully
installed to:
/sybase
# 设置目录权限
# chown -R sybase:sybase /sybase
# chmod -R 755 /sybase
# 验证安装
# ls -la /sybase/
总用量 0
drwxr-xr-x. 8 sybase sybase 120 4月 4 10:00 .
drwxr-xr-x. 3 root root 22 4月 4 10:00 ..
drwxr-xr-x. 3 sybase sybase 20 4月 4 10:00 ASE-16_0
drwxr-xr-x. 3 sybase sybase 20 4月 4 10:00 OCS-16_0
drwxr-xr-x. 3 sybase sybase 20 4月 4 10:00 SYSAM-2_0
drwxr-xr-x. 3 sybase sybase 20 4月 4 10:00 shared
4. 数据库参数配置
数据库参数配置是Sybase ASE安装的关键步骤,直接影响数据库性能和稳定性。更多学习教程公众号风哥教程itpux_com
4.1 配置interfaces文件
# su – sybase
# 编辑interfaces文件
$ vi $SYBASE/interfaces
# 添加以下内容
fgedudb
master tcp ether fgedudb01.fgedu.net.cn 5000
query tcp ether fgedudb01.fgedu.net.cn 5000
fgedudb_backup
master tcp ether fgedudb01.fgedu.net.cn 5001
query tcp ether fgedudb01.fgedu.net.cn 5001
# 说明:
# 第一行:服务器名称
# master:主连接配置
# query:查询连接配置
# tcp:使用TCP协议
# ether:以太网
# 主机名/IP:端口号
# 验证配置
$ cat $SYBASE/interfaces
fgedudb
master tcp ether fgedudb01.fgedu.net.cn 5000
query tcp ether fgedudb01.fgedu.net.cn 5000
4.2 创建数据库服务器
$ cd $SYBASE/$SYBASE_ASE/bin
$ ./srvbuildres -r $SYBASE/$SYBASE_ASE/init/srvbuild/srvbuild.cfg
# 或使用交互式创建
$ ./srvbuild
# 输出示例:
Building Adaptive Server ‘fgedudb’…
Running task: create the master device.
Building the master device…
Master device ‘/data/sybase/data/master.dat’ created successfully.
Running task: create the sybsystemprocs database.
Building the sybsystemprocs database…
sybsystemprocs database created successfully.
Running task: update Sybase Server entry in interfaces file.
Interfaces file updated successfully.
Running task: start the server.
Server ‘fgedudb’ started successfully.
Running task: install system stored procedures.
System stored procedures installed successfully.
Running task: set permissions for the ‘sa’ user.
Permissions set successfully.
Server ‘fgedudb’ was successfully created.
# 验证服务器状态
$ isql -Usa -Sfgedudb -P
1> select @@version
2> go
——————————————————————————————————————————
Adaptive Server Enterprise/16.0 SP04 PL02/EBF 28900/P/x86_64/Enterprise Linux/ase160sp04pl02/3980/64-bit/OPT/Fri Apr 04 10:00:00 2026
(1 row affected)
1> exit
4.3 配置服务器参数
$ isql -Usa -Sfgedudb -P
1> sp_configure ‘max memory’, 32768
2> go
Parameter name Default Memory Used Config Value Run Value Unit Type
———————– ———– ———– ———— ———— ——————– ———-
max memory 32768 32768 32768 32768 memory pages(2k) dynamic
(1 row affected)
(return status = 0)
1> sp_configure ‘number of user connections’, 100
2> go
Parameter name Default Memory Used Config Value Run Value Unit Type
———————– ———– ———– ———— ———— ——————– ———-
number of user connections 25 2200 100 100 number static
(1 row affected)
(return status = 0)
1> sp_configure ‘number of devices’, 20
2> go
Parameter name Default Memory Used Config Value Run Value Unit Type
———————– ———– ———– ———— ———— ——————– ———-
number of devices 10 0 20 20 number static
(1 row affected)
(return status = 0)
1> sp_configure ‘number of locks’, 100000
2> go
Parameter name Default Memory Used Config Value Run Value Unit Type
———————– ———– ———– ———— ———— ——————– ———-
number of locks 10000 3000 100000 100000 number dynamic
(1 row affected)
(return status = 0)
1> sp_configure ‘total data cache size’, 20480
2> go
Parameter name Default Memory Used Config Value Run Value Unit Type
———————– ———– ———– ———— ———— ——————– ———-
total data cache size 0 0 20480 20480 memory pages(2k) dynamic
(1 row affected)
(return status = 0)
1> exit
5. 存储设备管理
Sybase ASE使用设备(device)作为存储管理单元,合理规划存储设备对数据库性能至关重要。from:www.itpux.com
5.1 创建数据设备
$ isql -Usa -Sfgedudb -P
1> disk init
2> name = ‘datadev1’,
3> physname = ‘/data/sybase/data/datadev1.dat’,
4> size = ‘102400M’,
5> dsync = true
6> go
(1 row affected)
(return status = 0)
1> disk init
2> name = ‘datadev2’,
3> physname = ‘/data/sybase/data/datadev2.dat’,
4> size = ‘102400M’,
5> dsync = true
6> go
(1 row affected)
(return status = 0)
1> disk init
2> name = ‘logdev1’,
3> physname = ‘/data/sybase/log/logdev1.dat’,
4> size = ‘51200M’,
5> dsync = true
6> go
(1 row affected)
(return status = 0)
# 查看设备信息
1> sp_helpdevice
2> go
device_name physical_name description status cntrltype device_number low high
——————– ——————————— —————————————————————————————————– —— ——— ————- —- —-
datadev1 /data/sybase/data/datadev1.dat special, dsync on, physical disk, 102400.00 MB 2 0 2 0 52428799
datadev2 /data/sybase/data/datadev2.dat special, dsync on, physical disk, 102400.00 MB 2 0 3 0 52428799
logdev1 /data/sybase/log/logdev1.dat special, dsync on, physical disk, 51200.00 MB 2 0 4 0 26214399
master /data/sybase/data/master.dat special, dsync on, physical disk, 1024.00 MB 3 0 0 0 524287
sybsystemprocs /data/sybase/data/sybsystemprocs. special, dsync on, physical disk, 256.00 MB 2 0 1 0 131071
(5 rows affected)
(return status = 0)
5.2 创建数据库
1> create database fgedudb
2> on datadev1 = ‘51200M’,
3> datadev2 = ‘51200M’
4> log on logdev1 = ‘25600M’
5> go
CREATE DATABASE: allocating 26214400 logical pages (51200.0 megabytes) on disk ‘datadev1’ (26214400 logical pages requested)
CREATE DATABASE: allocating 26214400 logical pages (51200.0 megabytes) on disk ‘datadev2’ (26214400 logical pages requested)
CREATE DATABASE: allocating 13107200 logical pages (25600.0 megabytes) on disk ‘logdev1’ (13107200 logical pages requested)
Database ‘fgedudb’ is now online.
# 查看数据库信息
1> sp_helpdb fgedudb
2> go
name db_size owner dbid created durability status
——— ————- —– —- ———— ———- ————–
fgedudb 128000.0 MB sa 5 Apr 4, 2026 full online
(1 row affected)
device_fragments size usage free_kbytes
—————————— ————- —————- ————
datadev1 51200.0 MB data only 52428736
datadev2 51200.0 MB data only 52428736
logdev1 25600.0 MB log only 26214400
(3 rows affected)
(return status = 0)
# 设置数据库选项
1> sp_dboption fgedudb, ‘select into/bulkcopy’, true
2> go
Database option ‘select into/bulkcopy’ is now TRUE for database ‘fgedudb’.
Running CHECKPOINT on database ‘fgedudb’ for option ‘select into/bulkcopy’ to take effect.
(return status = 0)
1> sp_dboption fgedudb, ‘trunc log on chkpt’, true
2> go
Database option ‘trunc log on chkpt’ is now TRUE for database ‘fgedudb’.
Running CHECKPOINT on database ‘fgedudb’ for option ‘trunc log on chkpt’ to take effect.
(return status = 0)
1> exit
5.3 创建段(Segment)
$ isql -Usa -Sfgedudb -P
1> use fgedudb
2> go
1> sp_addsegment dataseg, fgedudb, datadev1
2> go
Segment created.
(return status = 0)
1> sp_addsegment indexseg, fgedudb, datadev2
2> go
Segment created.
(return status = 0)
1> sp_addsegment logseg, fgedudb, logdev1
2> go
Segment created.
(return status = 0)
# 查看段信息
1> sp_helpsegment
2> go
segment name status
——- —————————— ——
0 system 0
1 default 1
2 logsegment 0
3 dataseg 0
4 indexseg 0
(5 rows affected)
device size free_bytes status
———————- —————————- —————————- ————
datadev1 51200.0 MB 52428736 1
datadev2 51200.0 MB 52428736 1
logdev1 25600.0 MB 26214400 1
(3 rows affected)
(return status = 0)
1> exit
6. 网络连接配置
网络连接配置是客户端访问数据库的关键,需要正确配置监听端口和连接方式。更多学习教程www.fgedu.net.cn
6.1 配置网络监听
$ isql -Usa -Sfgedudb -P
1> sp_who
2> go
fid spid status loginame origname hostname blk_spid dbname tempdbname cmd block_xloid
— —— ———- ———- ———- ———- ———- ———- ———— ———– ———–
0 1 running sa sa fgedudb01 0 master NULL sp_who 0
0 2 sleeping sa sa NULL 0 master NULL network handl 0
0 3 sleeping sa sa NULL 0 master NULL network handl 0
0 4 sleeping sa sa NULL 0 master NULL checkpoint sle 0
(4 rows affected)
(return status = 0)
# 查看网络配置
1> sp_configure ‘max online engines’
2> go
Parameter name Default Memory Used Config Value Run Value Unit Type
———————– ———– ———– ———— ———— ——————– ———-
max online engines 1 0 4 4 number static
(1 row affected)
(return status = 0)
1> exit
6.2 配置远程连接
# vi $SYBASE/interfaces
# 添加服务器连接信息
fgedudb
master tcp ether 192.168.1.51 5000
query tcp ether 192.168.1.51 5000
# 在客户端设置环境变量
export SYBASE=/sybase
export SYBASE_ASE=ASE-16_0
export SYBASE_OCS=OCS-16_0
export PATH=$SYBASE/$SYBASE_ASE/bin:$SYBASE/$SYBASE_OCS/bin:$PATH
export DSQUERY=fgedudb
# 测试远程连接
$ isql -Usa -Sfgedudb -P
1> select @@servername
2> go
————–
fgedudb
(1 row affected)
1> exit
6.3 配置防火墙
$ exit
# 开放Sybase端口
# firewall-cmd –permanent –add-port=5000/tcp
success
# 开放备份端口
# firewall-cmd –permanent –add-port=5001/tcp
success
# 重载防火墙
# firewall-cmd –reload
success
# 验证防火墙规则
# firewall-cmd –list-ports
5000/tcp 5001/tcp
7. 备份恢复配置
备份恢复是数据库管理的重要环节,Sybase ASE提供了dump和load命令进行备份恢复。学习交流加群风哥微信: itpux-com
7.1 数据库备份
$ isql -Usa -Sfgedudb -P
# 全库备份
1> dump database fgedudb to ‘/backup/sybase/fgedudb_full.dmp’
2> go
Backup Server session id is: 5. Use this value when executing the ‘sp_volchanged’ system stored procedure after fulfilling any volume change request from the Backup Server.
Backup Server: 4.41.1.1: Creating new disk file /backup/sybase/fgedudb_full.dmp.
Backup Server: 6.28.1.1: Dumpfile name ‘fgedudb261044A3B6 ‘ section number 1 mounted on disk file ‘/backup/sybase/fgedudb_full.dmp’
Backup Server: 4.58.1.1: Database fgedudb: 102400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 204800 kilobytes (100%) DUMPed.
Backup Server: 3.43.1.1: Dump phase number 1 completed.
Backup Server: 3.43.1.1: Dump phase number 2 completed.
Backup Server: 3.43.1.1: Dump phase number 3 completed.
Backup Server: 4.58.1.1: Database fgedudb: 307200 kilobytes (100%) DUMPed.
Backup Server: 3.43.1.1: Dump phase number 4 completed.
Backup Server: 4.58.1.1: Database fgedudb: 409600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 512000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 614400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 716800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 819200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 921600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 1024000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 1126400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 1228800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 1331200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 1433600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 1536000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 1638400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 1740800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 1843200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 1945600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 2048000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 2150400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 2252800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 2355200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 2457600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 2560000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 2662400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 2764800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 2867200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 2969600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 3072000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 3174400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 3276800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 3379200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 3481600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 3584000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 3686400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 3788800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 3891200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 3993600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 4096000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 4198400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 4300800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 4403200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 4505600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 4608000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 4710400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 4812800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 4915200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 5017600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 5120000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 5222400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 5324800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 5427200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 5529600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 5632000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 5734400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 5836800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 5939200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 6041600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 6144000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 6246400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 6348800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 6451200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 6553600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 6656000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 6758400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 6860800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 6963200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 7065600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 7168000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 7270400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 7372800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 7475200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 7577600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 7680000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 7782400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 7884800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 7987200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 8089600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 8192000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 8294400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 8396800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 8499200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 8601600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 8704000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 8806400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 8908800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 9011200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 9113600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 9216000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 9318400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 9420800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 9523200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 9625600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 9728000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 9830400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 9932800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 10035200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 10137600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 10240000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 10342400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 10444800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 10547200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 10649600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 10752000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 10854400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 10956800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 11059200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 11161600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 11264000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 11366400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 11468800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 11571200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 11673600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 11776000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 11878400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 11980800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 12083200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 12185600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 12288000 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 12390400 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 12492800 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 12595200 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 12697600 kilobytes (100%) DUMPed.
Backup Server: 4.58.1.1: Database fgedudb: 12800000 kilobytes (100%) DUMPed.
(1 row affected)
7.2 事务日志备份
1> dump transaction fgedudb to ‘/backup/sybase/fgedudb_log.dmp’
2> go
Backup Server session id is: 7. Use this value when executing the ‘sp_volchanged’ system stored procedure after fulfilling any volume change request from the Backup Server.
Backup Server: 4.41.1.1: Creating new disk file /backup/sybase/fgedudb_log.dmp.
Backup Server: 6.28.1.1: Dumpfile name ‘fgedudb261044A3B7 ‘ section number 1 mounted on disk file ‘/backup/sybase/fgedudb_log.dmp’
Backup Server: 4.58.1.1: Database fgedudb: 102400 kilobytes (100%) DUMPed.
Backup Server: 3.43.1.1: Dump phase number 1 completed.
Backup Server: 3.43.1.1: Dump phase number 2 completed.
Backup Server: 3.43.1.1: Dump phase number 3 completed.
Backup Server: 3.43.1.1: Dump phase number 4 completed.
(1 row affected)
1> exit
7.3 数据库恢复
$ isql -Usa -Sfgedudb -P
1> load database fgedudb from ‘/backup/sybase/fgedudb_full.dmp’
2> go
Backup Server session id is: 9. Use this value when executing the ‘sp_volchanged’ system stored procedure after fulfilling any volume change request from the Backup Server.
Backup Server: 6.28.1.1: Dumpfile name ‘fgedudb261044A3B6 ‘ section number 1 mounted on disk file ‘/backup/sybase/fgedudb_full.dmp’
Backup Server: 4.58.1.1: Database fgedudb: 102400 kilobytes (100%) LOADed.
…
Backup Server: 4.58.1.1: Database fgedudb: 12800000 kilobytes (100%) LOADed.
Backup Server: 3.43.1.1: Load phase number 1 completed.
Backup Server: 3.43.1.1: Load phase number 2 completed.
Backup Server: 3.43.1.1: Load phase number 3 completed.
Backup Server: 3.43.1.1: Load phase number 4 completed.
(1 row affected)
1> online database fgedudb
2> go
Database ‘fgedudb’ is now online.
1> exit
8. 升级与迁移
数据库升级和迁移是运维工作中的重要环节,需要仔细规划和执行。更多学习教程公众号风哥教程itpux_com
8.1 版本升级
$ isql -Usa -Sfgedudb -P
1> select @@version
2> go
——————————————————————————————————————————
Adaptive Server Enterprise/16.0 SP04 PL02/EBF 28900/P/x86_64/Enterprise Linux/ase160sp04pl02/3980/64-bit/OPT/Fri Apr 04 10:00:00 2026
(1 row affected)
# 执行完整备份
1> dump database master to ‘/backup/sybase/master_pre_upgrade.dmp’
2> go
1> dump database fgedudb to ‘/backup/sybase/fgedudb_pre_upgrade.dmp’
2> go
# 关闭数据库
1> shutdown
2> go
Server SHUTDOWN by request.
The Adaptive Server is going down.
1> exit
# 安装新版本软件
# 切换到root用户
$ exit
# 安装新版本
# cd /tmp/ase_new_version
# ./setup.bin -i silent
# 切换到sybase用户
# su – sybase
# 执行升级脚本
$ cd $SYBASE/$SYBASE_ASE/bin
$ ./sqlupgrade -S fgedudb
# 输出示例:
Upgrading Adaptive Server ‘fgedudb’…
Running upgrade task: upgrade system tables.
System tables upgraded successfully.
Running upgrade task: upgrade stored procedures.
Stored procedures upgraded successfully.
Running upgrade task: upgrade system databases.
System databases upgraded successfully.
Upgrade completed successfully.
# 验证升级
$ isql -Usa -Sfgedudb -P
1> select @@version
2> go
——————————————————————————————————————————
Adaptive Server Enterprise/16.0 SP05 PL01/EBF 29000/P/x86_64/Enterprise Linux/ase160sp05pl01/4000/64-bit/OPT/Fri Apr 04 10:00:00 2026
(1 row affected)
1> exit
8.2 数据迁移
$ bcp fgedudb..fgedu_users out /backup/sybase/fgedu_users.txt -c -t”|” -Usa -Sfgedudb -P
# 输出示例:
Starting copy…
1000 rows copied.
Network packet size (bytes): 4096
Clock Time (ms.): total 1000
# 使用bcp导入数据
$ bcp fgedudb..fgedu_users in /backup/sybase/fgedu_users.txt -c -t”|” -Usa -Sfgedudb -P
# 输出示例:
Starting copy…
1000 rows copied.
Network packet size (bytes): 4096
Clock Time (ms.): total 1000
# 使用DDL导出
$ ddlgen -Usa -P -Sfgedudb -Dfgedudb -O fgedu_users -T T -B /backup/sybase/fgedu_users.ddl
# 输出示例:
Generating DDL for object ‘fgedu_users’…
DDL generated successfully.
9. 生产环境实战案例
本节提供一个完整的生产环境配置案例,帮助读者更好地理解Sybase ASE的实际应用。from:www.itpux.com
9.1 创建生产数据库表
$ isql -Usa -Sfgedudb -P
1> use fgedudb
2> go
1> create table fgedu_users (
2> user_id numeric(10,0) identity,
3> username varchar(50) not null,
4> password varchar(100) not null,
5> email varchar(100),
6> created_at datetime default getdate(),
7> updated_at datetime default getdate(),
8> constraint pk_users primary key clustered (user_id)
3> ) on dataseg
4> go
1> create unique index idx_users_username on fgedu_users(username) on indexseg
2> go
1> create table fgedu_orders (
2> order_id numeric(10,0) identity,
3> user_id numeric(10,0) not null,
4> order_no varchar(50) not null,
5> amount numeric(12,2) not null,
6> status varchar(20) default ‘pending’,
7> created_at datetime default getdate(),
8> constraint pk_orders primary key clustered (order_id),
9> constraint fk_orders_user foreign key (user_id) references fgedu_users(user_id)
10> ) on dataseg
11> go
1> create index idx_orders_user on fgedu_orders(user_id) on indexseg
2> go
1> create index idx_orders_status on fgedu_orders(status) on indexseg
2> go
1> insert into fgedu_users (username, password, email) values (‘admin’, ‘password123’, ‘admin@fgedu.net.cn’)
2> go
(1 row affected)
1> insert into fgedu_orders (user_id, order_no, amount, status) values (1, ‘ORD001’, 100.00, ‘completed’)
2> go
(1 row affected)
1> select * from fgedu_users
2> go
user_id username password email created_at updated_at
———– —————————————————- —————————————————- —————————————————- ———————– ———————–
1 admin password123 admin@fgedu.net.cn Apr 4 2026 10:00AM Apr 4 2026 10:00AM
(1 row affected)
1> exit
9.2 性能优化配置
$ isql -Usa -Sfgedudb -P
# 更新统计信息
1> update statistics fgedu_users
2> go
1> update statistics fgedu_orders
2> go
# 查看执行计划
1> set showplan on
2> go
1> select * from fgedu_users where username = ‘admin’
2> go
QUERY PLAN FOR STATEMENT 1 (at line 1).
STEP 1
The type of query is SELECT.
FROM TABLE
fgedu_users
Nested iteration.
Index : idx_users_username
Forward scan.
Positioning by key.
Keys are:
username ASC
Using I/O Size 2 Kbytes for index leaf pages.
With LRU Buffer Replacement Strategy for index leaf pages.
Using I/O Size 2 Kbytes for data pages.
With LRU Buffer Replacement Strategy for data pages.
user_id username password email created_at updated_at
———– —————————————————- —————————————————- —————————————————- ———————– ———————–
1 admin password123 admin@fgedu.net.cn Apr 4 2026 10:00AM Apr 4 2026 10:00AM
(1 row affected)
# 配置数据缓存
1> sp_cacheconfig ‘default data cache’, ‘1000M’
2> go
1> sp_poolconfig ‘default data cache’, ‘500M’, ‘2K’
2> go
1> sp_poolconfig ‘default data cache’, ‘500M’, ’16K’
2> go
1> exit
9.3 监控脚本配置
$ vi /home/sybase/scripts/sybase_monitor.sh
#!/bin/bash
export SYBASE=/sybase
export SYBASE_ASE=ASE-16_0
export SYBASE_OCS=OCS-16_0
export PATH=$SYBASE/$SYBASE_ASE/bin:$SYBASE/$SYBASE_OCS/bin:$PATH
export DSQUERY=fgedudb
LOG_FILE=/home/sybase/logs/monitor.log
DATE=$(date ‘+%Y-%m-%d %H:%M:%S’)
echo “=== $DATE ===” >> $LOG_FILE
# 检查数据库状态
$SYBASE/$SYBASE_OCS/bin/isql -Usa -Sfgedudb -Ppassword -b <
select ‘Status: Online’
go
select ‘Connections: ‘ + convert(varchar(10), count(*)) from master..sysprocesses
go
select ‘Locks: ‘ + convert(varchar(10), count(*)) from master..syslocks
go
EOF
echo “” >> $LOG_FILE
# 设置脚本权限
$ chmod +x /home/sybase/scripts/sybase_monitor.sh
# 配置定时任务
$ crontab -e
# 添加以下内容
*/5 * * * * /home/sybase/scripts/sybase_monitor.sh
# 验证定时任务
$ crontab -l
*/5 * * * * /home/sybase/scripts/sybase_monitor.sh
# 手动执行监控
$ /home/sybase/scripts/sybase_monitor.sh
# 查看监控日志
$ cat /home/sybase/logs/monitor.log
=== 2026-04-04 10:00:00 ===
Status: Online
Connections: 5
Locks: 2
本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html
