1. 首页 > 软件安装教程 > 正文

tdsql安装-tdsql 5.0 for RHEL 9安装配置及升级迁移详细过程

1. 硬件环境检查

在安装tdsql数据库之前,必须对服务器的硬件环境进行全面检查,确保满足tdsql 5.0的最低要求。更多学习教程www.fgedu.net.cn

# 检查内存大小
# free -h
total used free shared buff/cache available
Mem: 64G 2.2G 60G 9.1M 1.8G 61G
Swap: 32G 0B 32G

# 检查磁盘空间
# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 32G 0 32G 0% /dev
tmpfs 32G 0 32G 0% /dev/shm
tmpfs 32G 9.1M 32G 1% /run
tmpfs 32G 0 32G 0% /sys/fs/cgroup
/dev/sda1 50G 18G 33G 35% /
/dev/sdb1 500G 25G 475G 5% /data

# 检查CPU核心数
# nproc
32

# 检查系统架构
# uname -m
x86_64

生产环境建议:TDSQL集群建议至少3个节点,每个节点内存32GB以上,CPU 8核心以上,磁盘空间500GB以上。数据目录建议使用SSD,以提高性能。

2. 操作系统检查

tdsql 5.0支持Red Hat Enterprise Linux 7.0及以上版本。本文以RHEL 9.0为例。学习交流加群风哥微信: itpux-com

# 检查操作系统版本
# cat /etc/redhat-release
Red Hat Enterprise Linux release 9.0 (Plow)

# 检查内核版本
# uname -r
5.14.0-70.22.1.el9_0.x86_64

# 检查SELinux状态
# getenforce
Disabled

# 关闭SELinux(如未关闭)
# vi /etc/selinux/config
SELINUX=disabled

# 检查防火墙状态
# systemctl status firewalld

# 开放tdsql相关端口
# firewall-cmd –permanent –add-port=1433/tcp
# firewall-cmd –permanent –add-port=3306/tcp
# firewall-cmd –permanent –add-port=6379/tcp
# firewall-cmd –reload

3. 安装前准备

安装tdsql数据库前,需要进行一系列准备工作,包括创建用户、目录结构和配置系统参数。

# 创建tdsql用户和组
# groupadd tdsql
# useradd -g tdsql tdsql
# passwd tdsql
Changing password for user tdsql.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.

# 创建安装目录
# mkdir -p /data/tdsql
# mkdir -p /data/tdsql/data
# mkdir -p /backup/tdsql
# chown -R tdsql:tdsql /data/tdsql
# chown -R tdsql:tdsql /backup/tdsql
# chmod -R 755 /data/tdsql

# 配置系统参数
# vi /etc/sysctl.conf

# 添加以下参数
fs.file-max = 6815744
net.core.somaxconn = 32768
net.ipv4.tcp_max_syn_backlog = 8192
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_keepalive_time = 300
net.ipv4.tcp_keepalive_probes = 9
net.ipv4.tcp_keepalive_intvl = 30
vm.swappiness = 0
vm.overcommit_memory = 1

# 使参数生效
# sysctl -p

# 配置用户资源限制
# vi /etc/security/limits.conf

# 添加以下内容
tdsql soft nproc 65535
tdsql hard nproc 65535
tdsql soft nofile 65535
tdsql hard nofile 65535
tdsql soft core unlimited
tdsql hard core unlimited

风哥提示:系统参数配置对tdsql数据库的性能和稳定性至关重要,建议根据服务器实际硬件配置进行调整。

4. tdsql软件安装

tdsql 5.0软件安装使用官方提供的安装包进行部署。

# 切换到tdsql用户
# su – tdsql

# 上传安装包并解压
$ mkdir -p /tmp/tdsql
$ unzip TDSQL-5.0.0-Linux-x86_64.zip -d /tmp/tdsql

# 执行安装脚本
$ cd /tmp/tdsql
$ ./install.sh

# 安装过程交互
请输入安装目录 [/opt/tdsql]:/data/tdsql
请输入数据目录 [/data/tdsql/data]:/data/tdsql/data
请设置管理员密码:
请确认管理员密码:
请输入端口号 [1433]:1433
安装前小结
安装位置: /data/tdsql
数据目录: /data/tdsql/data
是否确认安装? (Y/y:是 N/n:否):Y

# 安装完成后,以root用户执行脚本
# /data/tdsql/install/script/root.sh
正在执行root.sh脚本…
创建TDSQL服务…
Created symlink /etc/systemd/system/multi-user.target.wants/TDSQL.service → /usr/lib/systemd/system/TDSQL.service.
启动TDSQL服务…
TDSQL服务启动成功

5. 数据库配置

安装完成后,需要创建和配置数据库实例。

# 启动tdsql服务
# systemctl start TDSQL
# systemctl enable TDSQL

# 连接tdsql数据库
# sqlcmd -S localhost,1433 -U sa -P password

# 创建数据库
1> CREATE DATABASE fgedudb;
2> GO

# 创建用户并授权
1> CREATE LOGIN fgedu WITH PASSWORD = ‘password’;
2> USE fgedudb;
3> CREATE USER fgedu FOR LOGIN fgedu;
4> GRANT ALL PRIVILEGES TO fgedu;
5> GO

# 配置tdsql参数
# vi /data/tdsql/conf/tdsql.conf

# 修改以下参数
[server]
max_connections = 1000
memory_limit = 32GB

[log]
slow_query_log = on
slow_query_threshold = 1000

# 重启tdsql服务
# systemctl restart TDSQL

6. 测试验证

数据库创建完成后,需要进行测试验证,确保数据库正常运行。学习交流加群风哥QQ113257174

# 连接数据库
# sqlcmd -S localhost,1433 -U fgedu -P password -d fgedudb

# 创建测试表
1> CREATE TABLE fgedu_employees (
2> emp_id INT PRIMARY KEY,
3> emp_name NVARCHAR(50),
4> salary DECIMAL(10,2),
5> hire_date DATE
6> );
7> GO

# 插入测试数据
1> INSERT INTO fgedu_employees VALUES (1, ‘张三’, 5000.00, GETDATE());
2> INSERT INTO fgedu_employees VALUES (2, ‘李四’, 6000.00, GETDATE());
3> GO

# 查询测试数据
1> SELECT * FROM fgedu_employees;
2> GO
emp_id emp_name salary hire_date
———– ————————————————– ——————— ———-
1 张三 5000.00 2026-03-31
2 李四 6000.00 2026-03-31

(2 rows affected)

7. 备份配置

为确保数据安全,需要配置数据库备份策略。

# 创建全量备份脚本
# vi /data/tdsql/scripts/full_backup.sh

#!/bin/bash
BACKUP_DIR=/backup/tdsql/full
DATE=$(date +%Y%m%d%H%M%S)

mkdir -p $BACKUP_DIR

# 执行全量备份
sqlcmd -S localhost,1433 -U sa -P password -Q “BACKUP DATABASE fgedudb TO DISK = ‘$BACKUP_DIR/fgedudb_full_$DATE.bak'”

# 赋予执行权限
# chmod +x /data/tdsql/scripts/full_backup.sh

# 配置定时任务
# crontab -e

# 添加每日凌晨2点执行全量备份
0 2 * * * /data/tdsql/scripts/full_backup.sh

生产环境建议:备份策略应包括每日全量备份和每小时增量备份,备份文件应存储在不同的物理位置,定期测试备份恢复以确保备份有效性。

8. 升级迁移

本节介绍tdsql数据库的升级和迁移方法。更多学习教程公众号风哥教程itpux_com

8.1 数据库升级

# 停止tdsql服务
# systemctl stop TDSQL

# 备份当前数据库
# cp -r /data/tdsql/data /backup/tdsql/backup_before_upgrade

# 执行升级命令
$ /data/tdsql/install/script/upgrade.sh

# 启动tdsql服务
# systemctl start TDSQL

# 验证升级结果
# sqlcmd -S localhost,1433 -U sa -P password -Q “SELECT @@VERSION;”

————————————————————————————————————————————————————————————————————————————————————————————————————
TDSQL Server 5.0.0 (Build 1234) on Linux (x86_64)

(1 rows affected)

8.2 数据库迁移

# 使用bcp工具导出数据
# bcp fgedudb.dbo.fgedu_employees out /backup/tdsql/migration/fgedu_employees.bcp -S localhost,1433 -U sa -P password -n

# 将导出文件复制到目标服务器
# scp /backup/tdsql/migration/fgedu_employees.bcp tdsql@target_host:/backup/tdsql/migration/

# 在目标服务器执行导入
# bcp fgedudb.dbo.fgedu_employees in /backup/tdsql/migration/fgedu_employees.bcp -S localhost,1433 -U sa -P password -n

# 验证迁移结果
# sqlcmd -S localhost,1433 -U fgedu -P password -d fgedudb -Q “SELECT COUNT(*) FROM fgedu_employees;”

———–
2

(1 rows affected)

9. 性能优化

为提高tdsql数据库性能,需要进行一系列参数优化。

# 配置tdsql参数
# vi /data/tdsql/conf/tdsql.conf

# 优化参数
[server]
max_connections = 1000
memory_limit = 32GB
query_cache_size = 1GB

[innodb]
innodb_buffer_pool_size = 16GB
innodb_log_file_size = 2GB
innodb_flush_log_at_trx_commit = 2

# 重启tdsql服务
# systemctl restart TDSQL

# 验证参数设置
# sqlcmd -S localhost,1433 -U sa -P password -Q “SHOW VARIABLES LIKE ‘max_connections’;”

Variable_name Value
———————— ————–
max_connections 1000

(1 rows affected)

风哥提示:性能优化参数应根据服务器硬件配置和应用场景进行调整,建议在测试环境验证后再应用到生产环境。

10. 故障排查

本节介绍tdsql数据库常见故障的排查方法。from:fengge

10.1 数据库无法启动

# 查看数据库日志
# cat /data/tdsql/log/tdsql.log

# 检查数据库服务状态
# systemctl status TDSQL

# 检查端口是否被占用
# netstat -tuln | grep 1433

10.2 连接失败

# 检查网络连通性
# ping localhost

# 检查防火墙设置
# firewall-cmd –list-ports

# 检查tdsql服务状态
# systemctl status TDSQL

10.3 性能问题

# 查看系统资源使用情况
# top

# 查看慢查询
# sqlcmd -S localhost,1433 -U sa -P password -Q “SELECT * FROM sys.dm_exec_query_stats ORDER BY total_elapsed_time DESC;”

# 分析执行计划
# sqlcmd -S localhost,1433 -U fgedu -P password -d fgedudb

1> SET SHOWPLAN_XML ON;
2> GO
1> SELECT * FROM fgedu_employees WHERE salary > 5000;
2> GO

生产环境建议:定期检查数据库日志和性能指标,建立监控系统,及时发现和解决问题。对于复杂故障,建议联系tdsql技术支持。

本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html

联系我们

在线咨询:点击这里给我发消息

微信号:itpux-com

工作日:9:30-18:30,节假日休息