diff --git a/0001-greatsql-8.0.32-add-loongarch-support.patch b/0001-greatsql-8.0.32-add-loongarch-support.patch new file mode 100644 index 0000000000000000000000000000000000000000..6b44b8e5c649e485c31e7ace607d96eb9f2f9047 --- /dev/null +++ b/0001-greatsql-8.0.32-add-loongarch-support.patch @@ -0,0 +1,101 @@ +From 77b6310acfd57e500211784806bb60c76c9a6cb2 Mon Sep 17 00:00:00 2001 +From: Huang Yang +Date: Mon, 22 Apr 2024 03:23:18 +0000 +Subject: [PATCH] greatsql 8.0.32 add loongarch support + +--- + extra/duktape/duktape-2.7.0/src/duk_config.h | 12 ++++++++++ + .../source/i18n/double-conversion-utils.h | 3 ++- + storage/ndb/include/portlib/mt-asm.h | 24 +++++++++++++++++++ + 3 files changed, 38 insertions(+), 1 deletion(-) + +diff --git a/extra/duktape/duktape-2.7.0/src/duk_config.h b/extra/duktape/duktape-2.7.0/src/duk_config.h +index 77cddc1d..2c919ea9 100644 +--- a/extra/duktape/duktape-2.7.0/src/duk_config.h ++++ b/extra/duktape/duktape-2.7.0/src/duk_config.h +@@ -42,6 +42,7 @@ + * - SPARC 64-bit + * - RISC-V 32-bit + * - RISC-V 64-bit ++ * - loongarch 64-bit + * - SuperH + * - Motorola 68k + * - Emscripten +@@ -303,6 +304,11 @@ + #endif + #endif /* __riscv */ + ++/* loongarch64 */ ++#if defined(__loongarch64) ++#define DUK_F_LOONGARCH64 ++#endif ++ + /* SuperH */ + #if defined(__sh__) || \ + defined(__sh1__) || defined(__SH1__) || \ +@@ -991,6 +997,12 @@ + #define DUK_USE_BYTEORDER 1 + #undef DUK_USE_PACKED_TVAL + #define DUK_F_PACKED_TVAL_PROVIDED ++#elif defined(DUK_F_LOONGARCH64) ++/* --- loongarch 64-bit --- */ ++#define DUK_USE_ARCH_STRING "loongarch64" ++#define DUK_USE_BYTEORDER 1 ++#undef DUK_USE_PACKED_TVAL ++#define DUK_F_PACKED_TVAL_PROVIDED + #elif defined(DUK_F_SUPERH) + /* --- SuperH --- */ + #define DUK_USE_ARCH_STRING "sh" +diff --git a/extra/icu/icu-release-69-1/source/i18n/double-conversion-utils.h b/extra/icu/icu-release-69-1/source/i18n/double-conversion-utils.h +index c9374636..8d95fe89 100644 +--- a/extra/icu/icu-release-69-1/source/i18n/double-conversion-utils.h ++++ b/extra/icu/icu-release-69-1/source/i18n/double-conversion-utils.h +@@ -128,7 +128,8 @@ int main(int argc, char** argv) { + defined(__riscv) || defined(__e2k__) || \ + defined(__or1k__) || defined(__arc__) || \ + defined(__microblaze__) || defined(__XTENSA__) || \ +- defined(__EMSCRIPTEN__) || defined(__wasm32__) ++ defined(__EMSCRIPTEN__) || defined(__wasm32__) || \ ++ defined(__loongarch64) + #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 + #elif defined(__mc68000__) || \ + defined(__pnacl__) || defined(__native_client__) +diff --git a/storage/ndb/include/portlib/mt-asm.h b/storage/ndb/include/portlib/mt-asm.h +index 418b8d9c..f2518eeb 100644 +--- a/storage/ndb/include/portlib/mt-asm.h ++++ b/storage/ndb/include/portlib/mt-asm.h +@@ -156,6 +156,30 @@ xcng(volatile unsigned * addr, int val) + #define wmb() std::atomic_thread_fence(std::memory_order_seq_cst) + + #define cpu_pause() __asm__ __volatile__ ("yield") ++#elif defined(__loongarch64) ++ ++#define NDB_HAVE_MB ++#define NDB_HAVE_RMB ++#define NDB_HAVE_WMB ++//#define NDB_HAVE_XCNG ++ ++// details frome kernel-6.9 arch/loongarch/include/asm/barrier.h ++ ++#define DBAR(hint) __asm__ __volatile__("dbar %0 " : : "I"(hint) : "memory") ++ ++#define crwrw 0b00000 ++#define cr_r_ 0b00101 ++#define c_w_w 0b01010 ++ ++#define c_sync() DBAR(crwrw) ++#define c_rsync() DBAR(cr_r_) ++#define c_wsync() DBAR(c_w_w) ++ ++#define mb() c_sync() ++#define rmb() c_rsync() ++#define wmb() c_wsync() ++ ++#define cpu_pause() __asm__ __volatile__ ("nop") + + #else + #define NDB_NO_ASM "Unsupported architecture (gcc)" +-- +2.43.0 + + diff --git a/README.en.md b/README.en.md deleted file mode 100644 index 1493fd094040f4c364a2dcfa5ca1d6af7d76d381..0000000000000000000000000000000000000000 --- a/README.en.md +++ /dev/null @@ -1,36 +0,0 @@ -# greatsql - -#### Description -GreatSQL - GreatSQL focuses on improving the reliability and performance of MGR, supports InnoDB parallel query and other features, and is a domestic MySQL version suitable for financial applications. It can be used as an optional replacement of MySQL or Percona Server. It is completely free and compatible with MySQL or Percona server. - -#### Software Architecture -Software architecture description - -#### Installation - -1. xxxx -2. xxxx -3. xxxx - -#### Instructions - -1. xxxx -2. xxxx -3. xxxx - -#### Contribution - -1. Fork the repository -2. Create Feat_xxx branch -3. Commit your code -4. Create Pull Request - - -#### Gitee Feature - -1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md -2. Gitee blog [blog.gitee.com](https://blog.gitee.com) -3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore) -4. The most valuable open source project [GVP](https://gitee.com/gvp) -5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help) -6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) diff --git a/README.md b/README.md index c4de87f19f8ad177a0a6cc5d102703f0f727e705..26f71acd4b92ed1ec5dae921d40c7bc740ff9855 100644 --- a/README.md +++ b/README.md @@ -1,106 +1,131 @@ # 关于 GreatSQL ---- -GreatSQL数据库是一款**开源免费**数据库,可在普通硬件上满足金融级应用场景,具有**高可用**、**高性能**、**高兼容**、**高安全**等特性,可作为MySQL或Percona Server for MySQL的理想可选替换。 +GreatSQL 数据库是一款 **开源免费** 数据库,可在普通硬件上满足金融级应用场景,具有 **高可用**、**高性能**、**高兼容**、**高安全** 等特性,可作为 MySQL 或 Percona Server for MySQL 的理想可选替换。 -# 下载GreatSQL ---- +最新版本:GreatSQL 8.0.32-26。 -## GreatSQL 8.0 -- [GreatSQL 8.0.32-25](https://gitee.com/GreatSQL/GreatSQL/releases/GreatSQL-8.0.32-25) -- [GreatSQL 8.0.32-24](https://gitee.com/GreatSQL/GreatSQL/releases/GreatSQL-8.0.32-24) -- [GreatSQL 8.0.25-17](https://gitee.com/GreatSQL/GreatSQL/releases/GreatSQL-8.0.25-17) -- [GreatSQL 8.0.25-16](https://gitee.com/GreatSQL/GreatSQL/releases/GreatSQL-8.0.25-16) -- [GreatSQL 8.0.25-15](https://gitee.com/GreatSQL/GreatSQL/releases/GreatSQL-8.0.25-15) +## 下载GreatSQL -## GreatSQL 5.7 -- [GreatSQL 5.7.36](https://gitee.com/GreatSQL/GreatSQL/releases/GreatSQL-5.7.36-39) +- [下载 GreatSQL 最新版本](https://gitee.com/GreatSQL/GreatSQL/releases/GreatSQL-8.0.32-26) +- [下载 GreatSQL 历史版本](https://gitee.com/GreatSQL/GreatSQL/releases/) # GreatSQL核心特性 ---- -## 1. 高可用 -针对MGR进行了大量改进和提升工作,新增支持**地理标签**、**仲裁节点**、**读写节点可绑定动态IP**、**快速单主模式**、**智能选主**,并针对**流控算法**、**事务认证队列清理算法**、**节点加入&退出机制**、**recovery机制**等多项MGR底层工作机制算法进行深度优化,进一步提升优化了MGR的高可用保障及性能稳定性。 - -- 支持地理标签特性,提升多机房架构数据可靠性。 -- 支持仲裁节点特性,用更低的服务器成本实现更高可用。 -- 支持读写节点动态VIP特性,高可用切换更便捷。 -- 支持快速单主模式,在单主模式下更快,性能更高。 -- 支持智能选主特性,高可用切换选主机制更合理。 -- 采用全新流控算法,使得事务更平稳,避免剧烈抖动。 -- 优化了节点加入、退出时可能导致性能剧烈抖动的问题。 -- 优化事务认证队列清理算法,高负载下不不复存在每60秒性能抖动问题。 +### [高可用](https://greatsql.cn/docs/5-enhance/5-2-ha.html) + +针对 MGR 及主从复制进行了大量改进和提升工作,支持 地理标签、仲裁节点、读写动态 VIP、快速单主模式、智能选主 等特性,并针对 流控算法、事务认证队列清理算法、节点加入&退出机制、recovery机制 等多个 MGR 底层工作机制算法进行深度优化,进一步提升优化了 MGR 的高可用保障及性能稳定性。 + +- 支持 [地理标签](https://greatsql.cn/docs/5-enhance/5-2-ha-mgr-zoneid.html) 特性,提升多机房架构数据可靠性。 +- 支持 [仲裁节点](https://greatsql.cn/docs/5-enhance/5-2-ha-mgr-arbitrator.html) 特性,用更低的服务器成本实现更高可用。 +- 支持 [读写动态 VIP](https://greatsql.cn/docs/5-enhance/5-2-ha-mgr-vip.html) 特性,高可用切换更便捷,更快实现读负载均衡。支持 [当主节点切换时,主动关闭当前活跃连接](https://greatsql.cn/docs/5-enhance/5-2-ha-mgr-kill-conn-after-switch.html),缩短应用端不可用时长。。 +- 支持 [快速单主模式](https://greatsql.cn/docs/5-enhance/5-2-ha-mgr-fast-mode.html),在单主模式下更快,性能更高。 +- 支持 [智能选主](https://greatsql.cn/docs/5-enhance/5-2-ha-mgr-election-mode.html) 特性,高可用切换选主机制更合理。 +- 优化 [流控算法](https://greatsql.cn/docs/5-enhance/5-2-ha-mgr-new-fc.html),使得事务更平稳,避免剧烈抖动。 +- 支持 [记录 MGR 网络通信开销超过阈值的事件](https://greatsql.cn/docs/5-enhance/5-2-ha-mgr-request-time.html),用于进一步分析和优化。 +- 支持自动选择从最新事务数据的成员节点复制数据,可有效提升 Clone 速度,提高 MGR 的服务可靠性。 +- 在主从复制中,从节点向主节点发起 Binlog 读取请求时支持限速控制。 +- 优化了 [asynchronous connection failover](https://dev.mysql.com/doc/refman/8.0/en/replication-asynchronous-connection-failover.html) 中的故障检测效率,降低主从复制链路断开的时间,提高整体可用性。 +- 支持在跨机房容灾场景中的 [主主双向复制防止回路](https://greatsql.cn/docs/5-enhance/5-2-ha-repl-server-mode.html) 机制。 +- 优化了 MGR 节点加入、退出时可能导致性能剧烈抖动的问题。 - 解决了个别节点上磁盘空间爆满时导致MGR集群整体被阻塞的问题。 -- 解决了长事务造成无法选主的问题。 -- 修复了recovery过程中长时间等待的问题。 +- 优化了 MGR 事务认证队列清理算法,高负载下不复存在每 60 秒性能抖动问题。 +- 解决了 MGR 中长事务造成无法选主的问题。 +- 修复了 MGR recovery 过程中长时间等待的问题。 -更多信息详见文档:[高可用](https://greatsql.cn/docs/8032-25/user-manual/5-enhance/5-2-ha.html)。 +更多信息详见文档:[高可用](https://greatsql.cn/docs/5-enhance/5-2-ha.html)。 -## 2. 高性能 -相对MySQL及Percona Server For MySQL的性能表现更稳定优异,支持**高性能的内存查询加速AP引擎**、**InnoDB并行查询**、**并行LOAD DATA**、**事务无锁化**、**线程池等**特性,在TPC-C测试中相对MySQL性能提升超过30%,在TPC-H测试中的性能表现是MySQL的十几倍甚至上百倍。 +### [高性能](https://greatsql.cn/docs/5-enhance/5-1-highperf.html) +相对 MySQL 及 Percona Server For MySQL 的性能表现更稳定优异,支持 Rapid 引擎、事务无锁化、并行 LOAD DATA、异步删除大表、线程池、非阻塞式 DDL、NUMA 亲和调度优化 等特性,在 TPC-C 测试中相对 MySQL 性能提升超过 30%,在 TPC-H 测试中的性能表现是 MySQL 的十几倍甚至上百倍。 -- 支持类似MySQL HeatWave的大规模并行、高性能的内存查询加速AP引擎,可将GreatSQL的数据分析性能提升几个数量级。 -- 支持InnoDB并行查询,适用于轻量级OLAP应用场景,在TPC-H测试中平均提升15倍,最高提升40+倍。 -- 优化InnoDB事务系统,实现了大锁拆分及无锁化等多种优化方案,OLTP场景整体性能提升约20%。 -- 支持并行LOAD DATA,适用于频繁导入大批量数据的应用场景,性能可提升约20+倍。 -- 支持线程池(Threadpool),降低了线程创建和销毁的代价,保证高并发下,性能稳定不会明显衰退。 +- 支持 [大规模并行、基于内存查询、高压缩比的高性能 Rapid 引擎](https://greatsql.cn/docs/5-enhance/5-1-highperf-rapid-engine.html),可将数据分析性能提升几个数量级。 +- 优化 InnoDB 事务系统,实现了大锁拆分及无锁化等多种优化方案,OLTP 场景整体性能提升约 20%。 +- 支持 [并行 LOAD DATA](https://greatsql.cn/docs/5-enhance/5-1-highperf-parallel-load.html),适用于频繁导入大批量数据的应用场景,性能可提升约 20 多倍;对于无显式定义主键的场景亦有优化提升。 +- 支持 [异步删除大表](https://greatsql.cn/docs/5-enhance/5-1-highperf-async-purge-big-table.html),提高 InnoDB 引擎运行时性能的稳定性。 +- 支持 [线程池](https://greatsql.cn/docs/5-enhance/5-1-highperf-thread-pool.html),降低了线程创建和销毁的代价,保证高并发下,性能稳定不会明显衰退。 +- 支持 [非阻塞式 DDL](https://greatsql.cn/docs/5-enhance/5-1-highperf-nonblocking-ddl.html),可以避免数据库因为必须尽快完成 DDL 操作而导致业务请求大量被阻塞的问题。 +- 支持 [NUMA 亲和性优化](https://greatsql.cn/docs/5-enhance/5-1-highperf-numa-affinity.html),通过 NUMA 亲和性调度优化,将前端用户线程和后台线程绑定到固定 NUMA 节点上以提升线程处理性能。 -更多信息详见文档:[高性能](https://greatsql.cn/docs/8032-25/user-manual/5-enhance/5-1-highperf.html)。 +更多信息详见文档:[高性能](https://greatsql.cn/docs/5-enhance/5-1-highperf.html)。 -## 3. 高兼容 +### [高兼容](https://greatsql.cn/docs/5-enhance/5-3-easyuse.html) -支持大多数常见Oracle用法,包括数据类型、函数、SQL语法、存储程序等兼容性用法。 +GreatSQL 实现 100% 完全兼容 MySQL 及 Percona Server For MySQL 语法,支持大多数常见 Oracle 语法,包括 [数据类型兼容](https://greatsql.cn/docs/5-enhance/5-3-easyuse.html#数据类型兼容)、[函数兼容](https://greatsql.cn/docs/5-enhance/5-3-easyuse.html#函数兼容)、[SQL 语法兼容](https://greatsql.cn/docs/5-enhance/5-3-easyuse.html#sql语法兼容)、[存储程序兼容](https://greatsql.cn/docs/5-enhance/5-3-easyuse.html#存储程序兼容) 等众多兼容扩展用法。 -更多信息详见文档:[高兼容](https://greatsql.cn/docs/8032-25/user-manual/5-enhance/5-3-easyuse.html)。 +更多信息详见文档:[高兼容](https://greatsql.cn/docs/5-enhance/5-3-easyuse.html)。 -## 4. 高安全 +### [高安全](https://greatsql.cn/docs/5-enhance/5-4-security.html) -支持逻辑备份加密、CLONE备份加密、审计日志入表、表空间国密加密等多个安全提升特性,进一步保障业务数据安全,更适用于金融级应用场景。 +GreatSQL 支持逻辑备份加密、CLONE 备份加密、审计、表空间国密加密、敏感数据脱敏、存储登录历史等多个安全提升特性,进一步保障业务数据安全,更适用于金融级应用场景。 -更多信息详见文档:[高安全](https://greatsql.cn/docs/8032-25/user-manual/5-enhance/5-4-security.html)。 +- 支持 [mysqldump 逻辑备份加密](https://greatsql.cn/docs/5-enhance/5-4-security-mysqldump-encrypt.html),提供了利用 mysqldump 逻辑备份的安全加密需求。 +- 支持 [Clone 备份加密](https://greatsql.cn/docs/5-enhance/5-4-security-clone-encrypt.html),提供了利用 Clone 物理备份的安全加密需求。 +- 支持 [审计功能](https://greatsql.cn/docs/5-enhance/5-4-security-audit.html),及时记录和发现未授权或不安全行为。 +- 支持 [InnoDB 表空间国密加密算法](https://greatsql.cn/docs/5-enhance/5-4-security-innodb-tablespace-encrypt.html),确保重要数据的加密安全。 +- 支持 [基于函数和策略的两种数据脱敏](https://greatsql.cn/docs/5-enhance/5-4-security-data-masking.html) 工作方式,保障敏感用户数据查询结果保密性。 +- 支持 [存储登录历史](https://greatsql.cn/docs/5-enhance/5-4-security-last-login.html),便于管理员查询,进一步提升数据库安全性。 -## 注意事项 ---- -推荐采用jemalloc库(推荐5.2.1+版本)来代替glibc中默认的内存管理分配器,是一个能够快速分配/回收内存,减少内存碎片,对多核友好,具有可伸缩性的内存分配器。为更好的支持多核内存分配的需要,jemalloc首次在FreeBSD中引入,而后被facebook发扬光大,成为了业界流行的内存分配解决方案之一。 +通过上述多个安全提升特性,进一步保障业务数据安全。更多信息详见文档:[高安全](https://greatsql.cn/docs/5-enhance/5-4-security.html)。 + +### [其他](https://greatsql.cn/docs/5-enhance/5-5-others.html) +- 支持 [Clone 在线全量热备、增备及恢复](https://greatsql.cn/docs/5-enhance/5-5-clone-compressed-and-incrment-backup.html),结合 Binlog 可实现恢复到指定时间点。此外,Clone 备份还支持压缩功能。 + +## 安装GreatSQL + +### 安装 jemalloc(推荐) + +运行 GreatSQL 时如果有 jemalloc 支持,则数据库进程的内存分配会更稳定、高效,因此建议安装 jemalloc(非必须)。采用类似下面的方法安装 jemalloc 软件包: -先安装 ``` -yum -y install jemalloc jemalloc-devel +# 先安装 epel 源 +$ yum install -y epel-release + +# 再安装jemalloc +$ yum -y install jemalloc jemalloc-devel ``` -也可以把自行安装的lib库so文件路径加到系统配置文件中,例如: +也可以把自行安装的动态库so文件路径加到系统配置文件中,例如: + ``` -[root@greatdb]# cat /etc/ld.so.conf +$ cat /etc/ld.so.conf /usr/local/lib64/ ``` 而后执行下面的操作加载libjemalloc库,并确认是否已存在 + ``` -[root@greatdb]# ldconfig +$ ldconfig -[root@greatdb]# ldconfig -p | grep libjemalloc - libjemalloc.so.2 (libc6,x86-64) => /usr/lib64/libjemalloc.so.2 - libjemalloc.so (libc6,x86-64) => /usr/lib64/libjemalloc.so +$ ldconfig -p | grep libjemalloc + libjemalloc.so.1 (libc6,x86-64) => /usr/local/lib64/libjemalloc.so.1 + libjemalloc.so (libc6,x86-64) => /usr/local/lib64/libjemalloc.so ``` -## 安装GreatSQL +如果无法通过 yum 直接安装 jemalloc,可以自行下载 RPM 包,地址:[https://centos.pkgs.org/8/epel-x86_64/jemalloc-5.2.1-2.el8.x86_64.rpm.html](https://centos.pkgs.org/8/epel-x86_64/jemalloc-5.2.1-2.el8.x86_64.rpm.html) + + +### 安装 GreatSQL + 执行下面的命令安装GreatSQL + ``` #首先,查找GreatSQL $ yum search GreatSQL ... +greatsql.src : GreatSQL: a high performance, highly reliable, easy to use, and high security database greatsql-client.x86_64 : GreatSQL - Client +greatsql-debuginfo.x86_64 : Debug information for package greatsql +greatsql-debugsource.x86_64 : Debug sources for package greatsql greatsql-devel.x86_64 : GreatSQL - Development header files and libraries greatsql-icu-data-files.x86_64 : GreatSQL packaging of ICU data files greatsql-mysql-config.x86_64 : GreatSQL config greatsql-mysql-router.x86_64 : GreatSQL MySQL Router -greatsql-server.x86_64 : GreatSQL: a high performance, highly reliable, easy to use, and high security database that can be used to replace - : MySQL or Percona Server. +greatsql-server.x86_64 : GreatSQL: a high performance, highly reliable, easy to use, and high security database that can be used to replace MySQL or Percona + : Server. greatsql-shared.x86_64 : GreatSQL - Shared libraries greatsql-test.x86_64 : Test suite for the GreatSQL #然后安装 -$ yum install -y greatsql-client greatsql-devel greatsql-icu-data-files greatsql-server greatsql-shared +$ yum install -y --allowerasing greatsql-client greatsql-devel greatsql-icu-data-files greatsql-server greatsql-shared ``` 安装完成后,GreatSQL会自行完成初始化,可以再检查是否已加入系统服务或已启动: @@ -125,7 +150,7 @@ $ systemctl status mysqld RPM方式安装后的GreatSQL默认配置不是太合理,建议参考下面这份my.cnf文档: -- [my.cnf for GreatSQL 8.0.32-25](https://gitee.com/GreatSQL/GreatSQL-Doc/blob/master/docs/my.cnf-example-greatsql-8.0.32-25) +- [my.cnf for GreatSQL 8.0.32-26](https://gitee.com/GreatSQL/GreatSQL-Doc/blob/master/docs/my.cnf-example-greatsql-8.0.32-26) 调整文档中关于`datadir`目录配置等相关选项,默认 `datadir=/var/lib/mysql` 通常都会改掉,例如替换成 `datadir=/data/GreatSQL`,修改完后保存退出, 替换原来的 `/etc/my.cnf`,然后重启GreatSQL,会重新进行初始化。 @@ -151,7 +176,7 @@ $ mysql -uroot -p'dt_)MtExl594' mysql: [Warning] Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 8 -Server version: 8.0.32-25 +Server version: 8.0.32-26 Copyright (c) 2021-2021 GreatDB Software Co., Ltd Copyright (c) 2009-2021 Percona LLC and/or its affiliates @@ -219,19 +244,16 @@ mysql> SELECT * FROM t1; 成功。 ## 版本历史 ---- -### GreatSQL 8.0 -- [Changes in GreatSQL 8.0.32-25 (2023-12-28)](https://greatsql.cn/docs/8032-25/user-manual/1-docs-intro/relnotes/changes-greatsql-8-0-32-25-20231228.md) -- [Changes in GreatSQL 8.0.32-24 (2023-6-5)](https://greatsql.cn/docs/8032-25/user-manual/1-docs-intro/relnotes/changes-greatsql-8-0-32-24-20230605.md) -- [Changes in GreatSQL 8.0.25-17 (2023-3-13)](https://greatsql.cn/docs/8032-25/user-manual/1-docs-intro/relnotes/changes-greatsql-8-0-25-17-20230313.md) -- [Changes in GreatSQL 8.0.25-16 (2022-5-16)](https://greatsql.cn/docs/8032-25/user-manual/1-docs-intro/relnotes/changes-greatsql-8-0-25-16-20220516.md) -- [Changes in GreatSQL 8.0.25-15 (2021-8-26)](https://greatsql.cn/docs/8032-25/user-manual/1-docs-intro/relnotes/changes-greatsql-8-0-25-20210820.md) - -### GreatSQL 5.7 -- [Changes in GreatSQL 5.7.36-39 (2022-4-7)](https://greatsql.cn/docs/8032-25/user-manual/1-docs-intro/relnotes/changes-greatsql-5-7-36-20220407.md) - -## MTR回归测试 -GreatSQL已经在openEuler 20.03 (LTS-SP2) 环境下通过MTR回归测试,表明GreatSQL与openEuler开源操作系统完全兼容,功能齐全,测试完备。 + +戳此查看 [GreatSQL 版本历史](https://greatsql.cn/docs/1-docs-intro/1-2-release-history.html)。 + +## QA测试 +GreatSQL 8.0.32-25 已经在 openEuler 24.03 LTS 环境下通过 QA 测试,表明 GreatSQL 与 openEuler 开源操作系统完全兼容,功能齐全,测试完备。 + +相关测试报告详见:[openEuler-24.03-LTS-GreatSQL测试报告](https://gitee.com/openeuler/QA/blob/master/Test_Result/openEuler_24.03_LTS/openEuler-24.03-LTS-GreatSQL%E6%B5%8B%E8%AF%95%E6%8A%A5%E5%91%8A.md)。 + +GreatSQL 8.0.25-16 已经在 openEuler 20.03 (LTS-SP2) 环境下通过 MTR 回归测试,表明 GreatSQL 与 openEuler 开源操作系统完全兼容,功能齐全,测试完备。 + 相关MTR测试报告详见:[GreatSQL 8.0.25-16通过MTR回归测试](https://gitee.com/src-openeuler/greatsql/blob/master/greatsql-802516-mtr-passed.md)。 ## 更多使用文档 @@ -255,114 +277,128 @@ GreatSQL已经在openEuler 20.03 (LTS-SP2) 环境下通过MTR回归测试,表 ## GreatSQL vs MySQL -下面是GreatSQL 和 MySQL社区版本的对比表格: - -| **1.主要特性** | GreatSQL 8.0.32-25 | MySQL 8.0.32 | +| **1.主要特性** | GreatSQL 8.0.32-26 | MySQL 8.0.32 | | :--- | :---: | :---: | | 开源 | :heavy_check_mark: | :heavy_check_mark: | -|ACID完整性| :heavy_check_mark: | :heavy_check_mark: | -|MVCC特性| :heavy_check_mark: | :heavy_check_mark: | +|ACID 完整性| :heavy_check_mark: | :heavy_check_mark: | +|MVCC 特性| :heavy_check_mark: | :heavy_check_mark: | |支持行锁| :heavy_check_mark: | :heavy_check_mark: | -|Crash自动修复| :heavy_check_mark: | :heavy_check_mark: | -|表分区(Partitioning)| :heavy_check_mark: | :heavy_check_mark: | -|视图(Views)| :heavy_check_mark: | :heavy_check_mark: | -|子查询(Subqueries)| :heavy_check_mark: | :heavy_check_mark: | -|触发器(Triggers)| :heavy_check_mark: | :heavy_check_mark: | -|存储程序(Stored Programs)| :heavy_check_mark: | :heavy_check_mark: | -|外键(Foreign Keys)| :heavy_check_mark: | :heavy_check_mark: | -|窗口函数(Window Functions)| :heavy_check_mark: | :heavy_check_mark: | -|通用表表达式CTE| :heavy_check_mark: | :heavy_check_mark: | -|地理信息(GIS)| :heavy_check_mark: | :heavy_check_mark: | -|基于GTID的复制| :heavy_check_mark: | :heavy_check_mark: | -|组复制(MGR)| :heavy_check_mark: | :heavy_check_mark: | -|MyRocks引擎| :heavy_check_mark: | | -| **2. 性能提升扩展** | GreatSQL 8.0.32-25 | MySQL 8.0.32 | -|AP引擎| :heavy_check_mark: | 仅云上HeatWave | -|InnODB并行查询| :heavy_check_mark: | 仅主键扫描 | -|并行LOAD DATA| :heavy_check_mark: | ❌ | -|InnoDB事务ReadView无锁优化| :heavy_check_mark: | ❌ | -|InnoDB事务大锁拆分优化| :heavy_check_mark: | ❌ | -|InnoDB资源组| :heavy_check_mark: | :heavy_check_mark: | -|自定义InnoDB页大小| :heavy_check_mark: | :heavy_check_mark: | +|Crash 自动修复| :heavy_check_mark: | :heavy_check_mark: | +|表分区(Partitioning)| :heavy_check_mark: | :heavy_check_mark: | +|视图(Views)| :heavy_check_mark: | :heavy_check_mark: | +|子查询(Subqueries)| :heavy_check_mark: | :heavy_check_mark: | +|触发器(Triggers)| :heavy_check_mark: | :heavy_check_mark: | +|存储程序(Stored Programs)| :heavy_check_mark: | :heavy_check_mark: | +|外键(Foreign Keys)| :heavy_check_mark: | :heavy_check_mark: | +|窗口函数(Window Functions)| :heavy_check_mark: | :heavy_check_mark: | +|通用表表达式 CTE| :heavy_check_mark: | :heavy_check_mark: | +|地理信息(GIS)| :heavy_check_mark: | :heavy_check_mark: | +|基于 GTID 的复制| :heavy_check_mark: | :heavy_check_mark: | +|组复制(MGR)| :heavy_check_mark: | :heavy_check_mark: | +|MyRocks 引擎| :heavy_check_mark: | ❌ | +|支持龙芯架构| :heavy_check_mark: | ❌ | +| **2. 性能提升扩展** | GreatSQL 8.0.32-26 | MySQL 8.0.32 | +|AP 引擎| :heavy_check_mark: | 仅云上HeatWave | +|NUMA 亲和性优化| :heavy_check_mark: | ❌ | +|非阻塞式 DDL| :heavy_check_mark: | ❌ | +|无主键表导入优化 | :heavy_check_mark: | ❌ | +|InnoDB 并行查询| :heavy_check_mark: | 仅主键扫描 | +|并行 LOAD DATA| :heavy_check_mark: | ❌ | +|InnoDB 事务 ReadView 无锁优化| :heavy_check_mark: | ❌ | +|InnoDB 事务大锁拆分优化| :heavy_check_mark: | ❌ | +|InnoDB 资源组| :heavy_check_mark: | :heavy_check_mark: | +|自定义 InnoDB 页大小| :heavy_check_mark: | :heavy_check_mark: | |Contention-Aware Transaction Scheduling| :heavy_check_mark: | :heavy_check_mark: | -|InnoDB Mutexes拆分优化| :heavy_check_mark: | ❌ | -|MEMORY引擎优化| :heavy_check_mark: | ❌ | -|InnoDB Flushing优化| :heavy_check_mark: | ❌ | -|并行Doublewrite Buffer| :heavy_check_mark: | :heavy_check_mark: | -|InnoDB快速索引创建优化| :heavy_check_mark: | ❌ | -|VARCHAR/BLOB/JSON类型存储单列压缩| :heavy_check_mark: | ❌ | +|InnoDB Mutexes 拆分优化| :heavy_check_mark: | ❌ | +|MEMORY 引擎优化| :heavy_check_mark: | ❌ | +|InnoDB Flushing 优化| :heavy_check_mark: | ❌ | +|并行 Doublewrite Buffer| :heavy_check_mark: | :heavy_check_mark: | +|InnoDB 快速索引创建优化| :heavy_check_mark: | ❌ | +|VARCHAR/BLOB/JSON 类型存储单列压缩| :heavy_check_mark: | ❌ | |数据字典中存储单列压缩信息| :heavy_check_mark: | ❌ | -| **3. 面向开发者提升改进** | GreatSQL 8.0.32-25 | MySQL 8.0.32 | +| **3. 面向开发者提升改进** | GreatSQL 8.0.32-26 | MySQL 8.0.32 | |X API| :heavy_check_mark: | :heavy_check_mark: | |JSON| :heavy_check_mark: | :heavy_check_mark: | |NoSQL Socket-Level接口| :heavy_check_mark: | :heavy_check_mark: | -|InnoDB全文搜索改进| :heavy_check_mark: | ❌ | -|更多Hash/Digest函数| :heavy_check_mark: | ❌ | -|Oracle兼容-数据类型| :heavy_check_mark: | ❌ | -|Oracle兼容-函数| :heavy_check_mark: | ❌ | -|Oracle兼容-SQL语法| :heavy_check_mark: | ❌ | -|Oracle兼容-存储程序| :heavy_check_mark: | ❌ | -| **4. 基础特性提升改进** | GreatSQL 8.0.32-25 | MySQL 8.0.32 | -|MGR提升-地理标签| :heavy_check_mark: | ❌ | -|MGR提升-仲裁节点| :heavy_check_mark: | ❌ | -|MGR提升-读写节点绑定VIP| :heavy_check_mark: | ❌ | -|MGR提升-快速单主模式| :heavy_check_mark: | ❌ | -|MGR提升-智能选主机制| :heavy_check_mark: | ❌ | -|MGR提升-全新流控算法| :heavy_check_mark: | ❌ | -|information_schema表数量|95|65| +|InnoDB 全文搜索改进| :heavy_check_mark: | ❌ | +|更多 Hash/Digest 函数| :heavy_check_mark: | ❌ | +|Oracle 兼容-数据类型| :heavy_check_mark: | ❌ | +|Oracle 兼容-函数| :heavy_check_mark: | ❌ | +|Oracle 兼容-SQL语法| :heavy_check_mark: | ❌ | +|Oracle 兼容-存储程序| :heavy_check_mark: | ❌ | +| **4. 基础特性提升改进** | GreatSQL 8.0.32-26 | MySQL 8.0.32 | +|MGR 提升-地理标签| :heavy_check_mark: | ❌ | +|MGR 提升-仲裁节点| :heavy_check_mark: | ❌ | +|MGR 提升-读写节点绑定VIP| :heavy_check_mark: | ❌ | +|MGR 提升-快速单主模式| :heavy_check_mark: | ❌ | +|MGR 提升-智能选主机制| :heavy_check_mark: | ❌ | +|MGR 提升-全新流控算法| :heavy_check_mark: | ❌ | +|MGR 提升-网络分区异常处理 | :heavy_check_mark: | ❌ | +|MGR 提升-节点异常退出处理 | :heavy_check_mark: | ❌ | +|MGR 提升-节点磁盘满处理 | :heavy_check_mark: | ❌ | +|MGR 提升-自动选择 donor 节点| :heavy_check_mark: | ❌ | +|Clone 增量备份| :heavy_check_mark: | ❌ | +|Clone 备份压缩| :heavy_check_mark: | ❌ | +|Binlog 读取限速| :heavy_check_mark: | ❌ | +|information_schema 表数量|95|65| |全局性能和状态指标|853|434| -|优化器直方图(Histograms)| :heavy_check_mark: | :heavy_check_mark: | -|Per-Table性能指标| :heavy_check_mark: | ❌ | -|Per-Index性能指标| :heavy_check_mark: | ❌ | -|Per-User性能指标| :heavy_check_mark: | ❌ | -|Per-Client性能指标| :heavy_check_mark: | ❌ | -|Per-Thread性能指标| :heavy_check_mark: | ❌ | +|优化器直方图(Histograms)| :heavy_check_mark: | :heavy_check_mark: | +|Per-Table 性能指标| :heavy_check_mark: | ❌ | +|Per-Index 性能指标| :heavy_check_mark: | ❌ | +|Per-User 性能指标| :heavy_check_mark: | ❌ | +|Per-Client 性能指标| :heavy_check_mark: | ❌ | +|Per-Thread 性能指标| :heavy_check_mark: | ❌ | |全局查询相应耗时统计| :heavy_check_mark: | ❌ | -|SHOW INNODB ENGINE STATUS增强| :heavy_check_mark: | ❌ | +|SHOW INNODB ENGINE STATUS 增强| :heavy_check_mark: | ❌ | |回滚段信息增强| :heavy_check_mark: | ❌ | |临时表信息增强| :heavy_check_mark: | ❌ | |用户统计信息增强| :heavy_check_mark: | ❌ | -|Slow log信息增强| :heavy_check_mark: | ❌ | -| **5.安全性提升** | GreatSQL 8.0.32-25 | MySQL 8.0.32 | +|Slow log 信息增强| :heavy_check_mark: | ❌ | +| **5.安全性提升** | GreatSQL 8.0.32-26 | MySQL 8.0.32 | |国密支持| :heavy_check_mark: | ❌ | |备份加密| :heavy_check_mark: | ❌ | -|审计日志入库| :heavy_check_mark: | ❌ | +|审计| :heavy_check_mark: | 仅企业版 | +|数据脱敏| :heavy_check_mark: | ❌ | +|最后登录记录| :heavy_check_mark: | ❌ | |SQL Roles| :heavy_check_mark: | :heavy_check_mark: | -|SHA-2密码Hashing| :heavy_check_mark: | :heavy_check_mark: | +|SHA-2 密码Hashing| :heavy_check_mark: | :heavy_check_mark: | |密码轮换策略| :heavy_check_mark: | :heavy_check_mark: | -|PAM认证插件| :heavy_check_mark: | 仅企业版 | -|审计插件| :heavy_check_mark: | 仅企业版 | -|Keyring存储在文件中| :heavy_check_mark: | :heavy_check_mark: | -|Keyring存储在Hashicorp Vault中| :heavy_check_mark: | 仅企业版 | -|InnoDB数据加密| :heavy_check_mark: | :heavy_check_mark: | -|InnoDB日志加密| :heavy_check_mark: | :heavy_check_mark: | -|InnoDB各种表空间文件加密| :heavy_check_mark: | :heavy_check_mark: | +|PAM 认证插件| :heavy_check_mark: | 仅企业版 | +|Keyring 存储在文件中| :heavy_check_mark: | :heavy_check_mark: | +|Keyring 存储在Hashicorp Vault中| :heavy_check_mark: | 仅企业版 | +|InnoDB 数据加密| :heavy_check_mark: | :heavy_check_mark: | +|InnoDB 日志加密| :heavy_check_mark: | :heavy_check_mark: | +|InnoDB 各种表空间文件加密| :heavy_check_mark: | :heavy_check_mark: | |二进制日志加密| :heavy_check_mark: | ❌ | |临时文件加密| :heavy_check_mark: | ❌ | |强制加密| :heavy_check_mark: | ❌ | -| **6. 运维便利性提升** | GreatSQL 8.0.32-25 | MySQL 8.0.32 | -|DDL原子性| :heavy_check_mark: | :heavy_check_mark: | -|数据字典存储InnoDB表| :heavy_check_mark: | :heavy_check_mark: | -|快速DDL| :heavy_check_mark: | :heavy_check_mark: | +| **6. 运维便利性提升** | GreatSQL 8.0.32-26 | MySQL 8.0.32 | +|DDL 原子性| :heavy_check_mark: | :heavy_check_mark: | +|数据字典存储 InnoDB 表| :heavy_check_mark: | :heavy_check_mark: | +|快速 DDL| :heavy_check_mark: | :heavy_check_mark: | |SET PERSIST| :heavy_check_mark: | :heavy_check_mark: | |不可见索引| :heavy_check_mark: | :heavy_check_mark: | -|线程池(Threadpool)| :heavy_check_mark: | 仅企业版 | +|线程池(Threadpool)| :heavy_check_mark: | 仅企业版 | |备份锁| :heavy_check_mark: | ❌ | -|SHOW GRANTS扩展| :heavy_check_mark: | ❌ | +|SHOW GRANTS 扩展| :heavy_check_mark: | ❌ | |表损坏动作扩展| :heavy_check_mark: | ❌ | |杀掉不活跃事务| :heavy_check_mark: | ❌ | -|START TRANSACTION WITH CONSISTENT SNAPSHOT扩展| :heavy_check_mark: | ❌ | +|START TRANSACTION WITH CONSISTENT SNAPSHOT 扩展| :heavy_check_mark: | ❌ | +GreatSQL 8.0.32-26 基于 Percona Server for MySQL 8.0.32 版本,它在 MySQL 8.0.32 基础上做了大量的改进和提升以及众多新特性,详情请见:[**Percona Server for MySQL feature comparison**](https://docs.percona.com/percona-server/8.0/feature-comparison.html),这其中包括线程池、审计、数据脱敏等 MySQL 企业版才有的特性,以及 performance_schema 提升、information_schema 提升、性能和可扩展性提升、用户统计增强、PROCESSLIST 增强、Slow Log 增强等大量改进和提升,这里不一一重复列出。 -此外,GreatSQL 8.0.32-25基于Percona Server for MySQL 8.0.32版本,它在MySQL 8.0.32基础上做了大量的改进和提升以及众多新特性,详情请见:[**Percona Server for MySQL feature comparison**](https://docs.percona.com/percona-server/8.0/feature-comparison.html),这其中包括线程池、审计、数据脱敏等MySQL企业版才有的特性,以及performance_schema提升、information_schema提升、性能和可扩展性提升、用户统计增强、PROCESSLIST增强、Slow log增强等大量改进和提升,这里不一一重复列出。 +## 许可/Licensing -GreatSQL同时也是gitee(码云)平台上的GVP项目,详见:[https://gitee.com/gvp/database-related](https://gitee.com/gvp/database-related) **数据库相关**类目。 +GreatSQL 致力于保持开源的开放性。GreatSQL 采用 GPLv2 协议。 + +## 温馨提示 + +[如果您在使用 GreatSQL,请告诉我们,将有机会获得精美礼品和免费技术支持](https://wj.qq.com/s2/11543483/9e09/)。 ## 问题反馈 --- - [问题反馈 gitee](https://gitee.com/GreatSQL/GreatSQL-Doc/issues) - ## 联系我们 --- diff --git a/greatsql-8.0.32-25.tar.xz.ac b/greatsql-8.0.32-25.tar.xz.ac deleted file mode 100644 index f1c54280c34b2f647cc6d65a4e9b10a3e1f15229..0000000000000000000000000000000000000000 Binary files a/greatsql-8.0.32-25.tar.xz.ac and /dev/null differ diff --git a/greatsql-8.0.32-25.tar.xz b/greatsql-8.0.32-26.tar.xz similarity index 100% rename from greatsql-8.0.32-25.tar.xz rename to greatsql-8.0.32-26.tar.xz diff --git a/greatsql-8.0.32-25.tar.xz.aa b/greatsql-8.0.32-26.tar.xz.aa similarity index 77% rename from greatsql-8.0.32-25.tar.xz.aa rename to greatsql-8.0.32-26.tar.xz.aa index 430e838e601e0561d676e8cc1869924e391c303b..695090fe74a662d424cebfe774915568d468b9f6 100644 Binary files a/greatsql-8.0.32-25.tar.xz.aa and b/greatsql-8.0.32-26.tar.xz.aa differ diff --git a/greatsql-8.0.32-26.tar.xz.ab b/greatsql-8.0.32-26.tar.xz.ab new file mode 100644 index 0000000000000000000000000000000000000000..988b1e6dd309558f4e1e5c00cc7c4c36a7bb815e Binary files /dev/null and b/greatsql-8.0.32-26.tar.xz.ab differ diff --git a/greatsql-8.0.32-25.tar.xz.ae b/greatsql-8.0.32-26.tar.xz.ac similarity index 78% rename from greatsql-8.0.32-25.tar.xz.ae rename to greatsql-8.0.32-26.tar.xz.ac index 3ee364a39aa2b2047fe2a144747446b48ba4c25f..eab335eb57d5ce2052336db51551d28dc9355dfc 100644 Binary files a/greatsql-8.0.32-25.tar.xz.ae and b/greatsql-8.0.32-26.tar.xz.ac differ diff --git a/greatsql-8.0.32-25.tar.xz.ai b/greatsql-8.0.32-26.tar.xz.ad similarity index 81% rename from greatsql-8.0.32-25.tar.xz.ai rename to greatsql-8.0.32-26.tar.xz.ad index 3285732dfcd04faf547a8e02d866fa7f64ff670f..c48f99a6ecf0f465c91285deb431cdfe84d86181 100644 Binary files a/greatsql-8.0.32-25.tar.xz.ai and b/greatsql-8.0.32-26.tar.xz.ad differ diff --git a/greatsql-8.0.32-25.tar.xz.ah b/greatsql-8.0.32-26.tar.xz.ae similarity index 78% rename from greatsql-8.0.32-25.tar.xz.ah rename to greatsql-8.0.32-26.tar.xz.ae index 6926fc8dec13e3444465cd3e521f153a0674d240..1ac2f9de7e5d853ff143f15d7f73b2a6d7d6e9d0 100644 Binary files a/greatsql-8.0.32-25.tar.xz.ah and b/greatsql-8.0.32-26.tar.xz.ae differ diff --git a/greatsql-8.0.32-25.tar.xz.ag b/greatsql-8.0.32-26.tar.xz.af similarity index 77% rename from greatsql-8.0.32-25.tar.xz.ag rename to greatsql-8.0.32-26.tar.xz.af index 7415fb05490fee30e9bad2cbe054eeaf1e27e295..2ef97fbd8662013755273b0fba2829ae6f98a6f9 100644 Binary files a/greatsql-8.0.32-25.tar.xz.ag and b/greatsql-8.0.32-26.tar.xz.af differ diff --git a/greatsql-8.0.32-25.tar.xz.ad b/greatsql-8.0.32-26.tar.xz.ag similarity index 77% rename from greatsql-8.0.32-25.tar.xz.ad rename to greatsql-8.0.32-26.tar.xz.ag index e6a86dafd4e5bda60d1d4e4479254e6f3581b61f..fe12463ae75427e0a599fe8da856507c1b9fb5ca 100644 Binary files a/greatsql-8.0.32-25.tar.xz.ad and b/greatsql-8.0.32-26.tar.xz.ag differ diff --git a/greatsql-8.0.32-25.tar.xz.ab b/greatsql-8.0.32-26.tar.xz.ah similarity index 78% rename from greatsql-8.0.32-25.tar.xz.ab rename to greatsql-8.0.32-26.tar.xz.ah index 4b7040dd4686a5ff243a56f66278c7dfc9aba5ab..b199b0cf5c8c2b50f2766621e2a795f99f731398 100644 Binary files a/greatsql-8.0.32-25.tar.xz.ab and b/greatsql-8.0.32-26.tar.xz.ah differ diff --git a/greatsql-8.0.32-25.tar.xz.af b/greatsql-8.0.32-26.tar.xz.ai similarity index 79% rename from greatsql-8.0.32-25.tar.xz.af rename to greatsql-8.0.32-26.tar.xz.ai index d2f2b62eec53f82075ccb0618afc12f6b1038891..f39bb6352f24e5bff26be05f9af94c3516dc82ff 100644 Binary files a/greatsql-8.0.32-25.tar.xz.af and b/greatsql-8.0.32-26.tar.xz.ai differ diff --git a/greatsql-8.0.32-25.tar.xz.aj b/greatsql-8.0.32-26.tar.xz.aj similarity index 68% rename from greatsql-8.0.32-25.tar.xz.aj rename to greatsql-8.0.32-26.tar.xz.aj index 0a0a82edea1dc8ad592cd3fbfe368851d7620332..7befb84bad20b1a52aebaf2dc285d4892df03854 100644 Binary files a/greatsql-8.0.32-25.tar.xz.aj and b/greatsql-8.0.32-26.tar.xz.aj differ diff --git a/greatsql.spec b/greatsql.spec index f1b50b874acb4b8fe9066189137f7c0e61b938ea..69ee09bfc8cf5f64f6bec11d5c870e8b076e100b 100644 --- a/greatsql.spec +++ b/greatsql.spec @@ -29,8 +29,8 @@ %global mysqldatadir /var/lib/mysql %global mysql_version 8.0.32 -%global greatsql_version 25 -%global revision db07cc5cb73 +%global greatsql_version 26 +%global revision a68b3034c3d %global tokudb_backup_version %{mysql_version}-%{greatsql_version} %global rpm_release 1 @@ -84,7 +84,7 @@ %global shared_lib_sec_name perconaserverclient # multiarch -%global multiarchs ppc %{power64} %{ix86} x86_64 %{sparc} %{arm} aarch64 +%global multiarchs ppc %{power64} %{ix86} x86_64 %{sparc} %{arm} aarch64 loongarch64 %global src_dir %{src_base}-%{mysql_version}-%{greatsql_version} @@ -103,18 +103,18 @@ Summary: GreatSQL: a high performance, highly reliable, easy to use, and Group: Applications/Databases Version: %{mysql_version} Release: %{release} -License: Copyright (c) 2000, 2018, %{mysql_vendor}. All rights reserved. Under %{?license_type} license as shown in the Description field.. -SOURCE0: greatsql-8.0.32-25.tar.xz -SOURCE101: greatsql-8.0.32-25.tar.xz.aa -SOURCE102: greatsql-8.0.32-25.tar.xz.ab -SOURCE103: greatsql-8.0.32-25.tar.xz.ac -SOURCE104: greatsql-8.0.32-25.tar.xz.ad -SOURCE105: greatsql-8.0.32-25.tar.xz.ae -SOURCE106: greatsql-8.0.32-25.tar.xz.af -SOURCE107: greatsql-8.0.32-25.tar.xz.ag -SOURCE108: greatsql-8.0.32-25.tar.xz.ah -SOURCE109: greatsql-8.0.32-25.tar.xz.ai -SOURCE110: greatsql-8.0.32-25.tar.xz.aj +License: GPL-2.0-or-later AND LGPL-2.1-only AND BSL-1.0 AND GPL-1.0-or-later OR Artistic-1.0-Perl AND BSD-2-Clause +SOURCE0: greatsql-8.0.32-26.tar.xz +SOURCE101: greatsql-8.0.32-26.tar.xz.aa +SOURCE102: greatsql-8.0.32-26.tar.xz.ab +SOURCE103: greatsql-8.0.32-26.tar.xz.ac +SOURCE104: greatsql-8.0.32-26.tar.xz.ad +SOURCE105: greatsql-8.0.32-26.tar.xz.ae +SOURCE106: greatsql-8.0.32-26.tar.xz.af +SOURCE107: greatsql-8.0.32-26.tar.xz.ag +SOURCE108: greatsql-8.0.32-26.tar.xz.ah +SOURCE109: greatsql-8.0.32-26.tar.xz.ai +SOURCE110: greatsql-8.0.32-26.tar.xz.aj URL: https://greatsql.cn SOURCE5: mysql_config.sh SOURCE10: boost_1_77_0.tar.xz @@ -129,8 +129,6 @@ BuildRequires: make BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: perl -#BuildRequires: perl(Time::HiRes)} -#BuildRequires: perl(Env)} BuildRequires: perl(Carp) BuildRequires: perl(Config) BuildRequires: perl(Cwd) @@ -165,9 +163,8 @@ BuildRequires: ncurses-devel BuildRequires: pam-devel BuildRequires: readline-devel BuildRequires: numactl-devel -BuildRequires: compat-openssl11-devel -#BuildRequires: openssl -#BuildRequires: openssl-devel +BuildRequires: openssl +BuildRequires: openssl-devel BuildRequires: zlib-devel BuildRequires: bison BuildRequires: openldap-devel @@ -188,7 +185,6 @@ BuildRequires: m4 BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) # For rpm => 4.9 only: https://fedoraproject.org/wiki/Packaging:AutoProvidesAndRequiresFiltering -#%global __requires_exclude ^perl\\((GD|hostnames|lib::mtr|lib::v1|mtr_|My::) %global __requires_exclude ^perl\\((GD|hostnames|lib::mtr|lib::v1|mtr_|My::|Lmo|Lmo::Meta|Lmo::Object|Lmo::Types|Lmo::Utils|Percona::Toolkit|Quoter|Transformers) %global __provides_exclude_from ^(/usr/share/(mysql|mysql-test)/.*|%{_libdir}/mysql/plugin/.*\\.so|/usr/include/mysql/.*|/usr/share/man/man.*/mysql.*|/etc/my.cnf|/usr/bin/mysql.*|/usr/sbin/mysqld.*|*libprotobuf*|*libmysqlclient.so*|*libmysqlharness*|*libmysqlrouter*|*mysqlclient*|*libdaemon*|*libfnv*|*libmemcached*|*libmurmur*|*libtest*)$ @@ -213,8 +209,7 @@ Requires: net-tools Requires(pre): greatsql-shared Requires: greatsql-client Requires: greatsql-icu-data-files -Requires: compat-openssl11-devel -#Requires: openssl +Requires: openssl Conflicts: Percona-SQL-server-50 Percona-Server-server-51 Percona-Server-server-55 Percona-Server-server-56 Percona-Server-server-57 %if 0%{?systemd} @@ -673,11 +668,14 @@ echo "socket=/var/lib/mysql/mysql.sock" >> /etc/my.cnf echo "log-error=/var/log/mysqld.log" >> /etc/my.cnf echo "pid-file=/var/run/mysqld/mysqld.pid" >> /etc/my.cnf echo "slow_query_log = ON" >> /etc/my.cnf -echo "long_query_time = 1" >> /etc/my.cnf +echo "long_query_time = 0.01" >> /etc/my.cnf echo "log_slow_verbosity = FULL" >> /etc/my.cnf echo "log_error_verbosity = 3" >> /etc/my.cnf echo "innodb_buffer_pool_size = 1G" >> /etc/my.cnf -echo "innodb_log_file_size = 128M" >> /etc/my.cnf +echo "innodb_redo_log_capacity = 256M" >> /etc/my.cnf +echo "innodb_io_capacity = 10000" >> /etc/my.cnf +echo "innodb_io_capacity_max = 20000" >> /etc/my.cnf +echo "innodb_flush_sync = OFF" >> /etc/my.cnf %preun -n greatsql-server %if 0%{?systemd} @@ -790,13 +788,13 @@ fi %attr(644, root, root) %{_mandir}/man1/myisamlog.1* %attr(644, root, root) %{_mandir}/man1/myisampack.1* %attr(644, root, root) %{_mandir}/man8/mysqld.8* -%if 0%{?systemd} -%exclude %{_mandir}/man1/mysqld_multi.1* -%exclude %{_mandir}/man1/mysqld_safe.1* -%else -%attr(644, root, root) %{_mandir}/man1/mysqld_multi.1* -%attr(644, root, root) %{_mandir}/man1/mysqld_safe.1* -%endif +#%if 0%{?systemd} +#%exclude %{_mandir}/man1/mysqld_multi.1* +#%exclude %{_mandir}/man1/mysqld_safe.1* +#%else +#%attr(644, root, root) %{_mandir}/man1/mysqld_multi.1* +#%attr(644, root, root) %{_mandir}/man1/mysqld_safe.1* +#%endif %attr(644, root, root) %{_mandir}/man1/mysqldumpslow.1* %attr(644, root, root) %{_mandir}/man1/mysql_secure_installation.1* %attr(644, root, root) %{_mandir}/man1/mysql_upgrade.1* @@ -893,7 +891,7 @@ fi %attr(755, root, root) %{_libdir}/mysql/plugin/component_reference_cache.so %attr(755, root, root) %{_libdir}/mysql/plugin/test_services_command_services.so #%attr(755, root, root) %{_libdir}/mysql/plugin/tokudb_backup.so -%attr(755, root, root) %{_libdir}/mysql/plugin/authentication_kerberos_client.so +#%attr(755, root, root) %{_libdir}/mysql/plugin/authentication_kerberos_client.so %attr(755, root, root) %{_libdir}/mysql/plugin/authentication_ldap_sasl.so %attr(755, root, root) %{_libdir}/mysql/plugin/authentication_oci_client.so %attr(755, root, root) %{_libdir}/mysql/plugin/component_encryption_udf.so @@ -951,7 +949,7 @@ fi %attr(755, root, root) %{_libdir}/mysql/plugin/debug/libtest_sql_sleep_is_connected.so %attr(755, root, root) %{_libdir}/mysql/plugin/debug/test_udf_wrappers.so %attr(755, root, root) %{_libdir}/mysql/plugin/debug/component_reference_cache.so -%attr(755, root, root) %{_libdir}/mysql/plugin/debug/authentication_kerberos_client.so +#%attr(755, root, root) %{_libdir}/mysql/plugin/debug/authentication_kerberos_client.so %attr(755, root, root) %{_libdir}/mysql/plugin/debug/authentication_ldap_sasl.so %attr(755, root, root) %{_libdir}/mysql/plugin/debug/authentication_oci_client.so %attr(755, root, root) %{_libdir}/mysql/plugin/debug/component_encryption_udf.so @@ -1352,16 +1350,25 @@ fi %changelog +* Thu Aug 8 2024 GreatSQL - 8.0.32-26.1 +- Release GreatSQL-8.0.32-26.1 + +* Mon Apr 22 2024 Wenlong Zhang - 8.0.32-25.3 +- add loongarch64 support + +* Fri Jun 7 2024 GreatSQL - 8.0.32-25.2 +- Change the compilation dependency of compat-openssl to openssl for GreatSQL-8.0.32-25.2 + * Thu Dec 28 2023 GreatSQL - 8.0.32-25.1 - Release GreatSQL-8.0.32-25.1 -* Wed Jul 5 2023 GreatSQL - 8.0.32-24.2 +* Wed Jul 5 2023 GreatSQL - 8.0.32-24.2 - modify libmysqlrouter.so.* to libmysqlrouter*.so.* -* Wed Jun 7 2023 GreatSQL - 8.0.32-24.1 +* Wed Jun 7 2023 GreatSQL - 8.0.32-24.1 - Release GreatSQL-8.0.32-24.1 for openEuler -* Mon Feb 6 2023 GreatSQL - 8.0.25-16.6 +* Mon Feb 6 2023 GreatSQL - 8.0.25-16.6 - compat-openssl11-devel * Tue Sep 13 2022 bzhaoop - 8.0.25-16.5 @@ -1377,7 +1384,7 @@ fi * Tue Aug 9 2022 bzhaoop - 8.0.25-16.2 - Hide the conflict libs and files. -* Wed Jun 6 2022 GreatSQL - 8.0.25-16.1 +* Mon Jun 6 2022 GreatSQL - 8.0.25-16.1 - Release GreatSQL-8.0.25-16.1 for openEuler * Mon Apr 25 2022 GreatSQL - 8.0.25-15.1