diff --git a/README.md b/README.md index 2b9c9b0daadfd4762aed40b57a34f131381d5180..712f668191b188d06f7eb5a4da6203ce7cd2a91e 100644 --- a/README.md +++ b/README.md @@ -1,23 +1,41 @@ # 关于 GreatSQL --- -GreatSQL开源数据库专注于提升MGR可靠性及性能,支持InnoDB并行查询等特性,是适用于金融级应用的国内自主MySQL版本;可以作为MySQL或Percona Server的可选替换,用于线上生产环境;且完全免费并兼容MySQL或Percona Server。 +GreatSQL是适用于金融级应用的国内自主开源数据库,具备高性能、高可靠、高易用性、高安全等多个核心特性,可以作为MySQL或Percona Server的可选替换,用于线上生产环境,且完全免费并兼容MySQL或Percona Server。 -## 版本特性 ---- -GreatSQL除了提升MGR性能及可靠性,还引入InnoDB事务锁优化及并行查询优化等特性,以及众多BUG修复。 -选用GreatSQl主要有以下几点优势: - -- GreatSQL是由万里数据库维护的MySQL分支 -- 专注于提升MGR可靠性及性能,支持InnoDB并行查询特性 -- 是适用于金融级应用的MySQL分支版本 -- 地理标签,提升多机房架构数据可靠性 -- 仲裁节点,用更低的服务器成本实现更高可用 -- 单主模式下更快,选主机制更完善 -- InnoDB表也支持并行查询,让CPU资源不再浪费 -- 全新流控机制,让MGR运行更流畅不频繁抖动 -- 相对官方社区版,MGR运行更稳定、可靠 -- 其他... +GreatSQL具备**高性能**、**高可靠**、**高易用性**、**高安全**等多个核心特性。 + +**1. 高性能** +- 支持InnoDB并行查询,适用于轻量级OLAP应用场景,在TPC-H测试中平均提升15倍,最高提升40+倍。 +- 优化InnoDB事务系统,实现了大锁拆分及无锁化等多种优化方案,OLTP场景整体性能提升约20%。 +- 支持并行load data,适用于频繁导入大批量数据的应用场景,性能可提升约20+倍。 +- 支持线程池(thread pool),降低了线程创建和销毁的代价,保证高并发下,性能稳定不会明显衰退。 + + +**2. 高可靠** +GreatSQL针对MGR进行了大量改进和提升工作,进一步提升MGR的高可靠等级。 +- 地理标签,提升多机房架构数据可靠性。 +- 读写节点动态VIP,高可用切换更便捷。 +- 仲裁节点,用更低的服务器成本实现更高可用。 +- 快速单主模式,在单主模式下更快,性能更高。 +- 智能选主,高可用切换选主机制更合理。 +- 全新流控算法,使得事务更平稳,避免剧烈抖动。 +- 优化了节点加入、退出时可能导致性能剧烈抖动的问题。 +- 解决磁盘空间爆满时导致MGR集群阻塞的问题。 +- 解决了长事务造成无法选主的问题。 +- 优化事务认证队列清理算法,规避每60s抖动问题。 +- 修复了recover过程中长时间等待的问题。 + +**3. 高易用性** +支持多个SQL兼容特性,包括CLOB、VARCHAR2数据类型,DATETIME运算、ROWNUM、子查询无别名、EXPLAIN PLAN FOR等语法,以及ADD_MONTHS()、CAST()、DECODE()等17个函数。 + +更多信息详见文档:[GreatSQL中的SQL兼容性](https://gitee.com/GreatSQL/GreatSQL-Doc/blob/master/relnotes/greatsql-803224/sql-compat.md)。 + +**4. 高安全性** +支持逻辑备份加密、CLONE备份加密、审计日志入表、表空间国密加密等多个安全提升特性,进一步保障业务数据安全,更适用于金融级应用场景。 + +更多信息详见文档:[GreatSQL中的安全性提升](https://gitee.com/GreatSQL/GreatSQL-Doc/blob/master/relnotes/greatsql-803224/changes-greatsql-8-0-32-24-20230605.md#14-% +E5%AE%89%E5%85%A8) ## 注意事项 --- @@ -47,11 +65,12 @@ $ yum search GreatSQL ... greatsql-client.x86_64 : GreatSQL - Client greatsql-devel.x86_64 : GreatSQL - Development header files and libraries +greatsql-icu-data-files.x86_64: GreatSQL packaging of ICU data files greatsql-server.x86_64 : GreatSQL: Open source database that can be used to replace MySQL or Percona Server. greatsql-shared.x86_64 : GreatSQL - Shared libraries #然后安装 -$ yum install -y greatsql-client greatsql-devel greatsql-server greatsql-shared +$ yum install -y greatsql-client greatsql-devel greatsql-icu-data-files greatsql-server greatsql-shared ``` 安装完成后,GreatSQL会自行完成初始化,可以再检查是否已加入系统服务或已启动: @@ -76,7 +95,7 @@ $ systemctl status mysqld RPM方式安装后的GreatSQL默认配置不是太合理,建议参考下面这份my.cnf文档: -- [my.cnf for GreatSQL 8.0.25-16](https://gitee.com/GreatSQL/GreatSQL-Doc/blob/master/docs/my.cnf-example-greatsql-8.0.25-16) +- [my.cnf for GreatSQL 8.0.32-24](https://gitee.com/GreatSQL/GreatSQL-Doc/blob/master/docs/my.cnf-example-greatsql-8.0.32-24) 调整文档中关于`datadir`目录配置等相关选项,默认 `datadir=/var/lib/mysql` 通常都会改掉,例如替换成 `datadir=/data/GreatSQL`,修改完后保存退出, 替换原来的 `/etc/my.cnf`,然后重启GreatSQL,会重新进行初始化。 @@ -102,9 +121,9 @@ $ 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.25-16 +Server version: 8.0.32-24 GreatSQL, Release 24, Revision 3714067bc8c -Copyright (c) 2021-2021 GreatDB Software Co., Ltd +Copyright (c) 2021-2023 GreatDB Software Co., Ltd Copyright (c) 2009-2021 Percona LLC and/or its affiliates Copyright (c) 2000, 2021, Oracle and/or its affiliates. @@ -172,9 +191,14 @@ mysql> SELECT * FROM t1; ## 版本历史 --- ### GreatSQL 8.0 -- [GreatSQL 更新说明 8.0.25-16(2021-5-16)](https://gitee.com/GreatSQL/GreatSQL-Doc/blob/master/relnotes/changes-greatsql-8-0-25-16-20220516.md) +- [GreatSQL 更新说明 8.0.32-24(2023-6-5)](https://gitee.com/GreatSQL/GreatSQL-Doc/blob/master/relnotes/greatsql-803224/changes-greatsql-8-0-32-24-20230605.md) +- [GreatSQL 更新说明 8.0.25-17(2023-3-13)](https://gitee.com/GreatSQL/GreatSQL-Doc/blob/master/relnotes/changes-greatsql-8-0-25-17-20230313.md) +- [GreatSQL 更新说明 8.0.25-16(2022-5-16)](https://gitee.com/GreatSQL/GreatSQL-Doc/blob/master/relnotes/changes-greatsql-8-0-25-16-20220516.md) - [GreatSQL 更新说明 8.0.25-15(2021-8-26)](https://gitee.com/GreatSQL/GreatSQL-Doc/blob/master/relnotes/changes-greatsql-8-0-25-20210820.md) +### GreatSQL 5.7 +- [GreatSQL 更新说明 5.7.36(2022-4-7)](https://gitee.com/GreatSQL/GreatSQL-Doc/blob/master/relnotes/changes-greatsql-5-7-36-20220407.md) + ## MTR回归测试 GreatSQL已经在openEuler 20.03 (LTS-SP2) 环境下通过MTR回归测试,表明GreatSQL与openEuler开源操作系统完全兼容,功能齐全,测试完备。 diff --git a/boost_1_73_0.tar.gz.aa b/boost_1_73_0.tar.gz.aa deleted file mode 100644 index 8865b3fa69add09a102cccb57224be2041d4395a..0000000000000000000000000000000000000000 Binary files a/boost_1_73_0.tar.gz.aa and /dev/null differ diff --git a/boost_1_73_0.tar.gz.ab b/boost_1_73_0.tar.gz.ab deleted file mode 100644 index ada818e80681d9a26e5058c57c666483d64095e1..0000000000000000000000000000000000000000 Binary files a/boost_1_73_0.tar.gz.ab and /dev/null differ diff --git a/boost_1_73_0.tar.gz.ac b/boost_1_73_0.tar.gz.ac deleted file mode 100644 index 28deedc76864bc91cd14f4c7df61a7095f42d69b..0000000000000000000000000000000000000000 Binary files a/boost_1_73_0.tar.gz.ac and /dev/null differ diff --git a/boost_1_73_0.tar.gz b/boost_1_77_0.tar.xz similarity index 100% rename from boost_1_73_0.tar.gz rename to boost_1_77_0.tar.xz diff --git a/greatsql-8.0.25-16.tar.gz.ah b/boost_1_77_0.tar.xz.aa similarity index 79% rename from greatsql-8.0.25-16.tar.gz.ah rename to boost_1_77_0.tar.xz.aa index 8e0f9409060bebade2a0453ac6f7be8a9600c98f..dbb486bfc61bd06d448d7c96b5cc44a6e277ea74 100644 Binary files a/greatsql-8.0.25-16.tar.gz.ah and b/boost_1_77_0.tar.xz.aa differ diff --git a/boost_1_77_0.tar.xz.ab b/boost_1_77_0.tar.xz.ab new file mode 100644 index 0000000000000000000000000000000000000000..0e60bf349cd66903005236a3c2f547ba5efbfd9c Binary files /dev/null and b/boost_1_77_0.tar.xz.ab differ diff --git a/greatsql-8.0.25-16.tar.gz.aa b/greatsql-8.0.25-16.tar.gz.aa deleted file mode 100644 index 21161114d00bdd45056d94055aa0fecabc24c8a8..0000000000000000000000000000000000000000 Binary files a/greatsql-8.0.25-16.tar.gz.aa and /dev/null differ diff --git a/greatsql-8.0.25-16.tar.gz.ab b/greatsql-8.0.25-16.tar.gz.ab deleted file mode 100644 index bd5d6967df167b6b3feb7bd3e84872b5055c8247..0000000000000000000000000000000000000000 Binary files a/greatsql-8.0.25-16.tar.gz.ab and /dev/null differ diff --git a/greatsql-8.0.25-16.tar.gz.ac b/greatsql-8.0.25-16.tar.gz.ac deleted file mode 100644 index e9a545f863fe5a14417e1069f0d6f995caa6f7f6..0000000000000000000000000000000000000000 Binary files a/greatsql-8.0.25-16.tar.gz.ac and /dev/null differ diff --git a/greatsql-8.0.25-16.tar.gz.ai b/greatsql-8.0.25-16.tar.gz.ai deleted file mode 100644 index d8101c3539b14217d9e8fe50516dcac2a36ff8a4..0000000000000000000000000000000000000000 Binary files a/greatsql-8.0.25-16.tar.gz.ai and /dev/null differ diff --git a/greatsql-8.0.25-16.tar.gz.ak b/greatsql-8.0.25-16.tar.gz.ak deleted file mode 100644 index e377a323cf9616070e74498099e7663d4d2ee4f2..0000000000000000000000000000000000000000 Binary files a/greatsql-8.0.25-16.tar.gz.ak and /dev/null differ diff --git a/greatsql-8.0.25-16.tar.gz b/greatsql-8.0.32-24.tar.xz similarity index 100% rename from greatsql-8.0.25-16.tar.gz rename to greatsql-8.0.32-24.tar.xz diff --git a/greatsql-8.0.25-16.tar.gz.ad b/greatsql-8.0.32-24.tar.xz.aa similarity index 79% rename from greatsql-8.0.25-16.tar.gz.ad rename to greatsql-8.0.32-24.tar.xz.aa index 9174d1ed6aab4ee1a534e934248e6981045428f0..73e9b9bdc7b01d1ad1f8e0361b731a837d399fe2 100644 Binary files a/greatsql-8.0.25-16.tar.gz.ad and b/greatsql-8.0.32-24.tar.xz.aa differ diff --git a/greatsql-8.0.32-24.tar.xz.ab b/greatsql-8.0.32-24.tar.xz.ab new file mode 100644 index 0000000000000000000000000000000000000000..9a8cb9938b7fd7af0e083ce26d5a651c182a8562 Binary files /dev/null and b/greatsql-8.0.32-24.tar.xz.ab differ diff --git a/greatsql-8.0.32-24.tar.xz.ac b/greatsql-8.0.32-24.tar.xz.ac new file mode 100644 index 0000000000000000000000000000000000000000..f4a628090d15ec3a636b0eb6b203fcd7f2a4665b Binary files /dev/null and b/greatsql-8.0.32-24.tar.xz.ac differ diff --git a/greatsql-8.0.25-16.tar.gz.ag b/greatsql-8.0.32-24.tar.xz.ad similarity index 80% rename from greatsql-8.0.25-16.tar.gz.ag rename to greatsql-8.0.32-24.tar.xz.ad index 24443591293147ef7b650a896f267eb9d81fe3ae..1aba014c9e35bce430ce65af15472cce3e393214 100644 Binary files a/greatsql-8.0.25-16.tar.gz.ag and b/greatsql-8.0.32-24.tar.xz.ad differ diff --git a/greatsql-8.0.25-16.tar.gz.aj b/greatsql-8.0.32-24.tar.xz.ae similarity index 80% rename from greatsql-8.0.25-16.tar.gz.aj rename to greatsql-8.0.32-24.tar.xz.ae index 51c22df1114b8fdb4e46ef21147c97dcf5b18e18..f22a4977a13c0386f07905703b03e0947177803b 100644 Binary files a/greatsql-8.0.25-16.tar.gz.aj and b/greatsql-8.0.32-24.tar.xz.ae differ diff --git a/greatsql-8.0.25-16.tar.gz.ae b/greatsql-8.0.32-24.tar.xz.af similarity index 80% rename from greatsql-8.0.25-16.tar.gz.ae rename to greatsql-8.0.32-24.tar.xz.af index 74d2856ffed4439382c8d89054e2d4e78de8a40c..88ea7094d497d4c55dea4cd66f1de4cf5e51d419 100644 Binary files a/greatsql-8.0.25-16.tar.gz.ae and b/greatsql-8.0.32-24.tar.xz.af differ diff --git a/greatsql-8.0.25-16.tar.gz.af b/greatsql-8.0.32-24.tar.xz.ag similarity index 81% rename from greatsql-8.0.25-16.tar.gz.af rename to greatsql-8.0.32-24.tar.xz.ag index 1131519f522f16ec823417a68a1d1ffb47cafd7a..460d811942ed1986668d63662100f75f46b7b9b3 100644 Binary files a/greatsql-8.0.25-16.tar.gz.af and b/greatsql-8.0.32-24.tar.xz.ag differ diff --git a/greatsql-8.0.32-24.tar.xz.ah b/greatsql-8.0.32-24.tar.xz.ah new file mode 100644 index 0000000000000000000000000000000000000000..72a30cff0282bb1ae9ee07c03b46c26b2d49465e Binary files /dev/null and b/greatsql-8.0.32-24.tar.xz.ah differ diff --git a/greatsql.spec b/greatsql.spec index e7bdd86eee34649c2ba5c51e733935286b774f9f..b2c8036d5c380950728e1ec8ccef6250af265c7f 100644 --- a/greatsql.spec +++ b/greatsql.spec @@ -80,24 +80,20 @@ 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.25-16.tar.gz -SOURCE101: greatsql-8.0.25-16.tar.gz.aa -SOURCE102: greatsql-8.0.25-16.tar.gz.ab -SOURCE103: greatsql-8.0.25-16.tar.gz.ac -SOURCE104: greatsql-8.0.25-16.tar.gz.ad -SOURCE105: greatsql-8.0.25-16.tar.gz.ae -SOURCE106: greatsql-8.0.25-16.tar.gz.af -SOURCE107: greatsql-8.0.25-16.tar.gz.ag -SOURCE108: greatsql-8.0.25-16.tar.gz.ah -SOURCE109: greatsql-8.0.25-16.tar.gz.ai -SOURCE110: greatsql-8.0.25-16.tar.gz.aj -SOURCE111: greatsql-8.0.25-16.tar.gz.ak +SOURCE0: greatsql-8.0.32-24.tar.gz +SOURCE101: greatsql-8.0.32-24.tar.gz.aa +SOURCE102: greatsql-8.0.32-24.tar.gz.ab +SOURCE103: greatsql-8.0.32-24.tar.gz.ac +SOURCE104: greatsql-8.0.32-24.tar.gz.ad +SOURCE105: greatsql-8.0.32-24.tar.gz.ae +SOURCE106: greatsql-8.0.32-24.tar.gz.af +SOURCE107: greatsql-8.0.32-24.tar.gz.ag +SOURCE108: greatsql-8.0.32-24.tar.gz.ah URL: https://gitee.com/GreatSQL/GreatSQL SOURCE5: mysql_config.sh -SOURCE10: boost_1_73_0.tar.gz -SOURCE201: boost_1_73_0.tar.gz.aa -SOURCE202: boost_1_73_0.tar.gz.ab -SOURCE203: boost_1_73_0.tar.gz.ac +SOURCE10: boost_1_77_0.tar.xz +SOURCE201: boost_1_77_0.tar.xz.aa +SOURCE202: boost_1_77_0.tar.xz.ab SOURCE90: filter-provides.sh SOURCE91: filter-requires.sh SOURCE11: mysqld.cnf @@ -185,8 +181,9 @@ Requires: grep Requires: procps Requires: shadow-utils Requires: net-tools -Requires(pre): greatsql-shared greatsql-mysql-config +Requires(pre): greatsql-shared Requires: greatsql-client +Requires: greatsql-icu-data-files Requires: compat-openssl11-devel Conflicts: Percona-SQL-server-50 Percona-Server-server-51 Percona-Server-server-55 Percona-Server-server-56 Percona-Server-server-57 @@ -357,9 +354,16 @@ Conflicts: mysql-config %description -n greatsql-mysql-config For a description of GreatSQL see https://gitee.com/GreatSQL/GreatSQL +%package -n greatsql-icu-data-files +Summary: GreatSQL packaging of ICU data files + +%description -n greatsql-icu-data-files +This package contains ICU data files needer by GreatSQL regular expressions. + + %prep -cat %{SOURCE201} %{SOURCE202} %{SOURCE203} > %{SOURCE10} -cat %{SOURCE101} %{SOURCE102} %{SOURCE103} %{SOURCE104} %{SOURCE105} %{SOURCE106} %{SOURCE107} %{SOURCE108} %{SOURCE109} %{SOURCE110} %{SOURCE111} > %{SOURCE0} +cat %{SOURCE201} %{SOURCE202} > %{SOURCE10} +cat %{SOURCE101} %{SOURCE102} %{SOURCE103} %{SOURCE104} %{SOURCE105} %{SOURCE106} %{SOURCE107} %{SOURCE108} > %{SOURCE0} %setup -q -T -a 0 -a 10 -c -n %{src_dir} pushd %{src_dir} %patch0 -p0 @@ -418,6 +422,7 @@ mkdir debug -DWITH_READLINE=system \ -DWITH_LIBEVENT=bundled \ -DWITH_KEYRING_VAULT=ON \ + -DWITH_NDB=OFF -DWITH_NDBCLUSTER_STORAGE_ENGINE=OFF -DWITH_NDBCLUSTER=OFF \ %{?ssl_option} \ %{?mecab_option} \ -DCOMPILATION_COMMENT="%{compilation_comment_debug}" %{TOKUDB_FLAGS} %{TOKUDB_DEBUG_OFF} %{ROCKSDB_FLAGS} @@ -464,6 +469,7 @@ mkdir release -DWITH_LIBEVENT=bundled \ -DWITH_ZSTD=bundled \ -DWITH_KEYRING_VAULT=ON \ + -DWITH_NDB=OFF -DWITH_NDBCLUSTER_STORAGE_ENGINE=OFF -DWITH_NDBCLUSTER=OFF \ %{?ssl_option} \ %{?mecab_option} \ -DCOMPILATION_COMMENT="%{compilation_comment_release}" %{TOKUDB_FLAGS} %{TOKUDB_DEBUG_OFF} %{ROCKSDB_FLAGS} @@ -1208,7 +1214,18 @@ fi %config(noreplace) %{_sysconfdir}/my.cnf %dir %{_sysconfdir}/my.cnf.d +%files -n greatsql-icu-data-files +%defattr(-, root, root, -) +%doc %{?license_files_server} +%dir %attr(755, root, root) %{_libdir}/mysql/private/icudt69l +%{_libdir}/mysql/private/icudt69l/unames.icu +%{_libdir}/mysql/private/icudt69l/brkitr + + %changelog +* Wed Jun 7 2023 GreatSQL - 8.0.32-24.7 +- Release GreatSQL-8.0.32-24.7 for openEuler + * Mon Feb 6 2023 GreatSQL - 8.0.25-16.6 - compat-openssl11-devel