【分享】在openEuler/TencentOS安装GreatSQL 8.0.32并用宝塔面板管理
通过宝塔面板在openEuler / TencentOS直接安装 GreatSQL,报错不能成功。本人在强大的中国AI加持下,成功开发一个脚本,用来安装GreatSQL rpm包,并注册到宝塔面板。本人已用于生产环境,现分享给诸位。安装效果:可通过宝塔面板统一管理数据库(创建、删除、改密),可免登使用宝塔phpmyadmin管理数据库。安装环境:宝塔V13.0.0,操作系统openEuler 22.03或TencentOS Server 4
安装过程:将脚本放到任意目录,赋予运行权限,使用root权限运行。
有关提示:仅限于干净系统安装,以免丢失数据。
免责声明:本人发布此脚本,出于方便确需同时使用宝塔面板和greatSQL的朋友使用,不谋求任何利益。因使用本脚本带来的任何后果,本人不承担任何责任,请审慎使用。
脚本:
附:以下是安装过程,在openEuler 22.03 (LTS-SP4) 和TencentOS Server 4 x86_64下一次跑通。
# sudo chmod +x ./greatsql_to_bt.sh
# ls
d_node.pl greatsql_to_bt.shmysql.sh.bakphp-7.4 public.sh
fix_install.shinstall_soft.sh nginx php.sh redis.sh
fix.log lib.sh nginx.sh pre_install_lib.sh
# sudo bash ./greatsql_to_bt.sh
前置清理完成 (停旧 mysqld, 清 pid/socket, reset systemd 状态)
未找到现有 GreatSQL, 准备下载并安装...
清理冲突包与旧残留...
发现冲突包:
mysql-libs-8.0.46-1.oe2203sp4.x86_64
卸载...
清除冲突文件: /usr/lib64/libmariadb.so.3
清理完成
GreatSQL 二进制已被清理, 将重新下载安装
补足依赖 (libreadline.so.7) ...
Last metadata expiration check: 0:39:58 ago on Mon 07 Sep 2026 07:26:04 PM CST.
No match for argument: compat-readline
Error: Unable to find a match: compat-readline
No match for argument: compat-readline
Error: Unable to find a match: compat-readline
No match for argument: libreadline7
Error: Unable to find a match: libreadline7
No match for argument: readline7
Error: Unable to find a match: readline7
警告: 未找到 libreadline.so.7, 尝试 symlink libreadline.so.8 兼容
下载并安装 RPM 包...
-rw-r--r--. 1 root root 124M Sep7 20:06 bundle.tar.xz
下载内容:
-rw-r--r--. 1 root root 19067864 Feb 262025 greatsql-client-8.0.32-27.1.el8.x86_64.rpm
-rw-r--r--. 1 root root1940908 Feb 262025 greatsql-devel-8.0.32-27.1.el8.x86_64.rpm
-rw-r--r--. 1 root root2175160 Feb 262025 greatsql-icu-data-files-8.0.32-27.1.el8.x86_64.rpm
-rw-r--r--. 1 root root5104364 Feb 262025 greatsql-mysql-router-8.0.32-27.1.el8.x86_64.rpm
-rw-r--r--. 1 root root 99874192 Feb 262025 greatsql-server-8.0.32-27.1.el8.x86_64.rpm
-rw-r--r--. 1 root root1537108 Feb 262025 greatsql-shared-8.0.32-27.1.el8.x86_64.rpm
软链 libreadline.so.7 -> libreadline.so.8 (兼容 GreatSQL)
安装: greatsql-icu-data-files-8.0.32-27.1.el8.x86_64.rpm
Preparing... ########################################
Updating / installing...
greatsql-icu-data-files-8.0.32-27.1.el########################################
安装: greatsql-shared-8.0.32-27.1.el8.x86_64.rpm
Preparing... ########################################
Updating / installing...
greatsql-shared-8.0.32-27.1.el8 ########################################
安装: greatsql-client-8.0.32-27.1.el8.x86_64.rpm
Preparing... ########################################
Updating / installing...
greatsql-client-8.0.32-27.1.el8 ########################################
安装: greatsql-server-8.0.32-27.1.el8.x86_64.rpm
Preparing... ########################################
Updating / installing...
greatsql-server-8.0.32-27.1.el8 ########################################
安装: greatsql-devel-8.0.32-27.1.el8.x86_64.rpm
Preparing... ########################################
Updating / installing...
greatsql-devel-8.0.32-27.1.el8 ########################################
安装: greatsql-mysql-router-8.0.32-27.1.el8.x86_64.rpm
Preparing... ########################################
Updating / installing...
greatsql-mysql-router-8.0.32-27.1.el8 ########################################
检测到 mysqld=/usr/sbin/mysqld, basedir=/usr
重新探测到 GreatSQL: basedir=/usr (mysqld=/usr/sbin/mysqld)
检查 mysql 用户...
关闭 greatsql 服务 (systemd 接管冲突)...
建立 /www/server/mysql ...
RPM 布局: 已建立 /www/server/mysql/ -> /usr 子目录映射
total 8
drwxr-xrwx.2 mysql mysql 4096 Sep7 20:06 .
drwxr-xrwx. 20 rootroot4096 Sep7 20:06 ..
lrwxrwxrwx.1 mysql mysql 8 Sep7 20:06 bin -> /usr/bin
lrwxrwxrwx.1 mysql mysql 12 Sep7 20:06 include -> /usr/include
lrwxrwxrwx.1 mysql mysql 8 Sep7 20:06 lib -> /usr/lib
lrwxrwxrwx.1 mysql mysql 10 Sep7 20:06 lib64 -> /usr/lib64
lrwxrwxrwx.1 mysql mysql 9 Sep7 20:06 sbin -> /usr/sbin
lrwxrwxrwx.1 mysql mysql 10 Sep7 20:06 share -> /usr/share
lrwxrwxrwx.1 mysql mysql 19 Sep7 20:06 support-files-real -> /usr/share/greatsql
准备数据目录 /www/server/data...
未发现已初始化数据, 将用 mysqld --initialize-insecure 初始化 /www/server/data
写入 /etc/my.cnf (宝塔 13.0 兼容配置)...
安装 sysv 启动脚本 /etc/init.d/mysqld...
未找到 mysql.server, 生成一份 SysV 脚本...
注册 systemd 服务 mysqld.service (直接 fork mysqld)...
软链用户态工具到 /usr/bin...
校验宝塔接管文件:
bin/mysql
bin/mysqld
写入宝塔识别文件...
启动 mysqld...
检测到空 datadir, 执行 mysqld --initialize-insecure ...
-- 初始化日志 (init.err) --
2026-09-07T12:06:52.624948Z 0 'Disabling symbolic links using --skip-symbolic-links (or equivalent) is the default. Consider not using this option as it' is deprecated and will be removed in a future release.
2026-09-07T12:06:52.624980Z 0 'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode. They will be merged with strict mode in a future release.
2026-09-07T12:06:52.625083Z 0 /usr/sbin/mysqld (mysqld 8.0.32-27) initializing of server in progress as process 337571
2026-09-07T12:06:52.668756Z 0 Deprecated configuration parameters innodb_log_file_size and/or innodb_log_files_in_group have been used to compute innodb_redo_log_capacity=536870912. Please use innodb_redo_log_capacity instead.
2026-09-07T12:06:52.670679Z 1 InnoDB initialization has started.
2026-09-07T12:06:55.934457Z 1 InnoDB initialization has ended.
2026-09-07T12:07:04.822418Z 6 root@localhost is created with an empty password ! Please consider switching off the --initialize-insecure option.
-- end --
初始化成功: /www/server/data/mysql 已就绪
service mysqld 启动成功
mysqld 已监听 3306 端口 ✓
设置 root 密码 (从 /www/server/panel/data/default.pl)...
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.
同步 root 密码到宝塔面板 (tools.py root)...
✓ 宝塔面板 root 密码已同步
OK
✓ 宝塔 config.json mysql_root 已同步
检测到 jemalloc, 在 段开启 LD_PRELOAD...
处理 phpMyAdmin 兼容性...
警告: 未找到 phpMyAdmin 安装目录
配置 PHP mysqli.default_socket...
PHP 74...
桥接校验...
mysql 命令
mysqld
mysqld_safe
version.pl
宝塔元数据 json
socket /tmp/mysql.sock (未生成)
3306 端口监听 (NO)
root 密码文件
phpMyAdmin 配置文件 (未找到)
PHP mysqli.socket 配置
⚠ 检测到 mysqld 未在监听 3306, 尝试拉起...
✓ mysqld 已重新启动
完成所有步骤
=================================================
桥接完成 ✓
MySQL 服务: service mysqld status
登录 mysql: mysql -uroot -p$(cat /www/server/panel/data/default.pl)
宝塔面板: 数据库 → 应显示 greatsql_8.0.32
phpMyAdmin:浏览器访问面板页面里'数据库 → phpMyAdmin'
如果宝塔未刷新:
1. 重启宝塔 panel:bt restart
2. 进入 软件商店 → 已安装 → MySQL → 保存一次即可触发识别
如果 phpMyAdmin 仍报 caching_sha2_password:
在终端执行:
mysql -uroot -p$(cat /www/server/panel/data/default.pl) \
-e "ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '\2de9441dec69a02b';"
然后重置数据库密码: bt 14
=================================================
#
页:
[1]