Sybase 安装与备份
一、测试环境
项目 | 配置详情 |
---|---|
操作系统 | CentOS 79 |
硬件资源 | 4GB RAM、200GB 磁盘空间 |
用户规划 | 创建 sybase 用户及同名组 |
二、安装准备
1. 配置镜像源
# 进入yum源配置目录并备份原有配置
cd /etc/yum.repos.d/
mkdir backup
mv *.repo backup/
# 下载阿里云CentOS 7镜像源
wget http://mirrors.aliyun.com/repo/Centos-7.repo
2. 安装依赖库
# 更新系统并安装开发工具及依赖包
yum update -y
yum groupinstall "Development Tools" -y
yum install -y libaio libaio-devel glibc.i686 ncurses-libs.i686 libstdc++.i686 libaio.i686 nss-softokn-freebl.i686 zlib.i686 glibc-devel.i686 libgcc.i686 libsbgse2.so
3. 创建用户和组
# 创建sybase组和用户(家目录为/home/sybase)
groupadd sybase
useradd -g sybase -d /home/sybase -m sybase
# 设置sybase用户密码(执行后按提示输入密码)
passwd sybase
4. 配置系统参数
(1)修改文件描述符限制
编辑 /etc/security/limits.conf
文件,在末尾添加以下内容:
sybase hard nofile 65536
sybase soft nofile 65536
sybase hard nproc 65536
sybase soft nproc 65536
(2)修改内核参数
编辑 /etc/sysctl.conf
文件,确保包含以下参数(若不存在则添加,若值较小则更新):
kernel.shmmax = 4294967296
kernel.shmall = 4194304
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
编辑后运行 sysctl -p 使配置生效
5. 准备安装目录
# 创建Sybase安装目录并授权给sybase用户
mkdir /opt/sybase
chown -R sybase:sybase /opt/sybase
三、安装 Sybase ASE
1. 上传并解压安装包
# 切换到sybase用户
su - sybase
# 进入用户家目录并解压安装包(假设安装包已上传至/home/sybase)
cd /home/sybase
tar -zxf ase157_linuxx86-64.tgz
2. 运行安装程序
# 执行控制台模式安装
./setup.bin -i console
3. 安装配置选择(按顺序选择)
安装目录:
/opt/sybase
安装方式:
Typical
安装版本:
Install Free Developer Edition of Sybase Adaptive Server Enterprise Suite
许可证区域:
All regions
许可协议:阅读后输入
Y
同意确认安装信息后等待安装(约40分钟)
4. 服务器配置(安装完成后进入配置阶段)
配置项 | 配置值 |
---|---|
服务器实例名 | SYBASE |
管理员(sa)密码 | Sybase@123 |
服务器端口 | 5000 |
错误日志目录 | /opt/sybase/ASE-15_0/install/SYBASE.log |
应用程序类型 | Mixed (OLTP/DSS) |
页大小 | 4k |
默认语言 | utf8,defaultml |
优化ASE配置 | 否 |
创建简单数据库 | 是 |
启用PCI/JAVA | 否 |
备份服务器名称 | SYBASE_BS |
备份服务器端口 | 5001 |
备份服务器错误日志 | /opt/sybase/ASE-15_0/install/SYBASE_BS.log |
XP server 端口 | 5002 |
XP server 错误日志 | /opt/sybase/ASE-15_0/install/SYBASE_XP.log |
剩余配置默认即可,配置完成后,等待显示 Installation Completed
即表示安装成功。
5. 配置环境变量
# 编辑Sybase环境变量文件
vi /opt/sybase/SYBASE.sh
# 在文件中添加以下内容
export DSQUERY=SYBASE
# 将环境变量文件复制到系统profile目录并生效
cp /opt/sybase/SYBASE.sh /etc/profile.d
source /etc/profile
source /etc/profile.d/SYBASE.sh
6. 修改接口文件
编辑 /opt/sybase/interfaces
文件,替换主机名为实际服务器IP地址(示例IP为10.0.0.20):
SYBASEmaster tcp ether 10.0.0.20 5000query tcp ether 10.0.0.20 5000
SYBASE_BSmaster tcp ether 10.0.0.20 5001query tcp ether 10.0.0.20 5001
SYBASE_XPmaster tcp ether 10.0.0.20 5002query tcp ether 10.0.0.20 5002
四、备份测试
1. 创建备份目录
# 创建备份目录并授权
sudo mkdir -p /opt/sybase/backups
sudo chown -R sybase:sybase /opt/sybase/backups
sudo chmod 755 /opt/sybase/backups
2. 连接Sybase数据库
# 使用sa用户登录(密码为安装时设置的Sybase@123)
isql -Usa -PSybase@123
3. 准备测试数据
-- 查看所有数据库
sp_helpdb
go
-- 创建测试数据库(大小20MB)
CREATE DATABASE testdb ON master = 20
go
-- 切换到测试数据库
use testdb
go
-- 创建测试表
CREATE TABLE test_table (id INT IDENTITY PRIMARY KEY,name VARCHAR(50),created_date DATETIME DEFAULT GETDATE()
)
GO
-- 查看表结构
sp_help test_table
go
-- 插入测试数据
INSERT INTO test_table (name) VALUES ('Test Data 1')
INSERT INTO test_table (name) VALUES ('Test Data 2')
INSERT INTO test_table (name) VALUES ('Test Data 3')
GO
-- 验证数据插入结果
SELECT * FROM test_table
GO
4. 执行数据库备份
-- 全量备份testdb到指定目录
DUMP DATABASE testdb TO '/opt/sybase/backups/testdb_full.dmp'
WITH INIT
GO
打开另一终端,验证备份文件:
ls -la /opt/sybase/backups/
5. 模拟数据丢失并恢复
(1)删除测试数据库
-- 切换到master数据库(避免当前连接占用testdb)
USE master
GO
-- 删除数据库
DROP DATABASE testdb
GO
(2)从备份恢复数据库
-- 重新创建同名数据库(需与备份时结构一致)
CREATE DATABASE testdb ON master = 20
GO
-- 从备份文件恢复数据
LOAD DATABASE testdb FROM '/opt/sybase/backups/testdb_full.dmp'
GO
-- 使数据库在线
ONLINE DATABASE testdb
GO
6. 验证恢复结果
-- 切换到恢复后的数据库
USE testdb
GO
-- 验证表数据是否完整
SELECT * FROM test_table
GO
-- 检查数据库状态
sp_helpdb testdb
GO
若查询结果显示3条测试数据且数据库状态正常,则备份与恢复测试成功。