前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >GreatSQL登陆Arch Linux:成功的数据库安装之旅

GreatSQL登陆Arch Linux:成功的数据库安装之旅

作者头像
GreatSQL社区
发布于 2023-12-14 01:36:17
发布于 2023-12-14 01:36:17
23300
代码可运行
举报
运行总次数:0
代码可运行

* GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源。

了解Arch Linux

Arch Linux是一个轻量、灵活、基于x86-64架构的Linux发行版,遵循K.I.S.S.原则。注重代码正确、优雅和极简主义,期待用户能够愿意去理解系统的操作。

1.简洁

Arch Linux将简洁定义为:避免任何不必要的添加、修改和复杂增加。简单来说,archlinux 是一个可以让用户自己动手打造的操作系统。从安装到管理,archlinux 放手让用户处理一切。

用户可以自己决定使用哪种桌面环境、安装哪些组件和服务。这种精细化的控制能够赋予你一个精简的操作系统,可以让用户自由选择所需的组件来构建属于用户自己的系统。

2.滚动更新(现代)

滚动更新(rolling update)是指软件开发中经常性将更新发送到软件的概念。相较于滚动发行,有标准版本和小数点版本的版本号开发模式,必需通过重新安装以取代先前的发行版。Arch Linux 是没有版本概念的,它始终保持最新的状态,通俗的理解就相当于把发行版比喻为一部车,ubuntu 更新就是换一部新的,而 Arch Linux就是把车里面旧的配件换成新的。

Arch Linux是一个滚动发行版,这意味着:

  1. 新的内核和应用程序版本一经发布,就会立即向用户推送
  2. 当大多数其它 Linux 发行版还在提供旧的 Linux 内核版本时,Arch Linux会迅速向用户提供最新的内核
  3. 而软件也是如此。如果 Arch Linux仓库中的软件发布了新版本,Arch Linux用户通常会比其他用户先获得新版本
  4. 在滚动发行模式下,一切都是新鲜和前沿的。用户不必把操作系统从一个版本升级到另一个版本,只要使用 pacman 的升级命令,便会始终保持最新的版本

3.实用

Arch Linux注重实用性,避免意识形态之争。最终的设计决策都是由开发者的共识决定。开发者依赖基于事实的技术分析和讨论,避免政治因素,不会被流行观点左右。

Arch Linux的仓库中包含大量的软件包和编译脚本。用户可以按照需要自由选择。仓库中既提供了开源、自由的软件,也提供了闭源软件(大部分闭源软件在 AUR 仓库中)。实用性大于意识形态

4.激进的内核更新机制

Arch Linux在更新内核的时候会立即删除旧内核(因为内核也是一个软件包 linux / linux-zen...,由 pacman 更新)

立即删除旧的内核要求 Arch Linux必须重启来加载新的内核,否则容易发生诡异的问题。这是因为 Linux 所谓的“内核”包含有大量的动态加载模块,如果在某次启动后,某个模块没有被加载过,然后系统内核更新了并且删除了旧的内核,那么这些模块将永远不能被加载了——因为它们随着旧内核被删掉了。除非用户重启系统以完整切换到新的内核以使用新版的动态加载模块。

5.软件包管理体系

不同于 Debian 系列的 apt / dpkg 和 Red Hat 系列的 dnf(yum)/ rpm 包管理体系,Arch Linux只用了一个工具 pacman 就解决了获取和安装两个功能。这降低了为 Arch Linux 制作软件包的门槛,这也是 AUR 几乎能涵盖整个 Linux 软件生态的主要原因。但是这也导致 pacman 不支持虚包(virtual package)。

更多介绍前往Arch Linux社区网站:https://www.archlinuxcn.org/

安装Arch Linux

安装Arch Linux过程这里就不再详细介绍了,可前往Arch Linux的官方文档查看详细的安装流程:https://arch-linux.osrc.com/rookie/pre-install.html

下面,我将展示成功安装完成的Arch Linux环境

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ uname -a
Linux myarch 6.6.3-arch1-1 #1 SMP PREEMPT_DYNAMIC Wed, 29 Nov 2023 00:37:40 +0000 x86_64 GNU/Linux

$ neofetch
root@myarch 
----------- 
OS: Arch Linux x86_64 
Host: Latitude 5491 
Kernel: 6.6.3-arch1-1 
Uptime: 17 hours, 39 mins 
Packages: 187 (pacman) 
Shell: bash 5.2.21 
Resolution: 1920x1080 
Terminal: /dev/pts/0 
CPU: Intel i7-8850H (12) @ 4.300GHz 
GPU: Intel CoffeeLake-H GT2 [UHD Graphics 630] 
Memory: 239MiB / 15787MiB

$ lcc -version
ldd (GNU libc) 2.38

安装GreatSQL

什么是GreatSQL

GreatSQL是适用于金融级应用的国内自主开源数据库,具备高性能、高可靠、高易用性、高安全等多个核心特性,可以作为MySQL或Percona Server的可选替换,用于线上生产环境,且完全免费并兼容MySQL或Percona Server。

GreatSQL具备高性能高可靠高易用性高安全等多个核心特性。

选择GreatSQL安装包

因为Arch Linux系统自带的ldd (GNU libc)版本是2.38,所以这里下载的GreatSQL二进制包选择

  • GreatSQL-8.0.32-24-Linux-glibc2.28-x86_64.tar.xz

Arch Linux系统缺少wget所以我们需要先安装wget

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ pacman -S wget

将二进制安装包下载在/usr/local目录下,并解压

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ cd /usr/local
$ wget https://product.greatdb.com/GreatSQL-8.0.32-24/GreatSQL-8.0.32-24-Linux-glibc2.28-x86_64.tar.xz
# 解压
$ tar xf GreatSQL-8.0.32-24-Linux-glibc2.28-x86_64.tar.xz

运行环境配置

因为Arch Linux系统主打极简风,所以selinux和防火墙都没有,我们都不需要手动关闭了:)

安装依赖包

Arch Linux用了一个工具 pacman 作为下载软件包

进入到GreatSQL-8.0.32-24-Linux-glibc2.28-x86_64/bin目录,输入命令ldd mysqld mysql | grep "not found"若不显示其它信息则已经不缺必要软件包

这里我缺失了两个依赖包

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
libaio.so.1 => not found
libnuma.so.1 => not found

使用pacman安装libaio和numactl

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ pacman -S libaio
$ pacman -S numactl

最后检查下若不显示其它信息则已经不缺必要软件包

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ ldd mysqld mysql | grep "not found"

创建配置文件及新建用户与目录

可根据实际情况修改,一般主要涉及数据库文件分区、目录,内存配置等少数几个选项。以下面这份为例

注意,若内存不够充足请调低 innodb_buffer_pool_size

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ vi /etc/my.cnf
[client]
socket  = /data/GreatSQL/mysql.sock

[mysqld]
user    = mysql
port    = 3306
#主从复制或MGR集群中,server_id记得要不同
#另外,实例启动时会生成 auto.cnf,里面的 server_uuid 值也要不同
#server_uuid的值还可以自己手动指定,只要符合uuid的格式标准就可以
server_id = 3306
basedir = /usr/local/GreatSQL-8.0.32-24-Linux-glibc2.28-x86_64
datadir = /data/GreatSQL
socket  = /data/GreatSQL/mysql.sock
pid-file = mysql.pid
character-set-server = UTF8MB4
skip_name_resolve = 1
#若你的MySQL数据库主要运行在境外,请务必根据实际情况调整本参数
default_time_zone = "+8:00"

#performance setttings
lock_wait_timeout = 3600
open_files_limit    = 65535
back_log = 1024
max_connections = 512
max_connect_errors = 1000000
table_open_cache = 1024
table_definition_cache = 1024
thread_stack = 512K
sort_buffer_size = 4M
join_buffer_size = 4M
read_buffer_size = 8M
read_rnd_buffer_size = 4M
bulk_insert_buffer_size = 64M
thread_cache_size = 768
interactive_timeout = 600
wait_timeout = 600
tmp_table_size = 32M
max_heap_table_size = 32M
max_allowed_packet = 64M
net_buffer_shrink_interval = 180
#GIPK
loose-sql_generate_invisible_primary_key = ON

#log settings
log_timestamps = SYSTEM
log_error = error.log
log_error_verbosity = 3
slow_query_log = 1
log_slow_extra = 1
slow_query_log_file = slow.log
#设置slow log文件大小1G及总文件数10
max_slowlog_size = 1073741824
max_slowlog_files = 10
long_query_time = 0.1
log_queries_not_using_indexes = 1
log_throttle_queries_not_using_indexes = 60
min_examined_row_limit = 100
log_slow_admin_statements = 1
log_slow_slave_statements = 1
log_bin = binlog
binlog_format = ROW
sync_binlog = 1
binlog_cache_size = 4M
max_binlog_cache_size = 2G
max_binlog_size = 1G
#控制binlog总大小,避免磁盘空间被撑爆
binlog_space_limit = 500G
binlog_rows_query_log_events = 1
binlog_expire_logs_seconds = 604800
#MySQL 8.0.22前,想启用MGR的话,需要设置binlog_checksum=NONE才行
binlog_checksum = CRC32
gtid_mode = ON
enforce_gtid_consistency = TRUE

#myisam settings
key_buffer_size = 32M
myisam_sort_buffer_size = 128M

#replication settings
relay_log_recovery = 1
slave_parallel_type = LOGICAL_CLOCK
#可以设置为逻辑CPU数量的2倍
slave_parallel_workers = 64
binlog_transaction_dependency_tracking = WRITESET
slave_preserve_commit_order = 1
slave_checkpoint_period = 2

#innodb settings
innodb_buffer_pool_size = 2G
innodb_buffer_pool_instances = 8
innodb_data_file_path = ibdata1:12M:autoextend
innodb_flush_log_at_trx_commit = 1
innodb_log_buffer_size = 32M
innodb_log_file_size = 2G
innodb_log_files_in_group = 3
innodb_redo_log_capacity = 6G
innodb_max_undo_log_size = 4G
# 根据您的服务器IOPS能力适当调整
# 一般配普通SSD盘的话,可以调整到 10000 - 20000
# 配置高端PCIe SSD卡的话,则可以调整的更高,比如 50000 - 80000
innodb_io_capacity = 4000
innodb_io_capacity_max = 8000
innodb_open_files = 65535
innodb_flush_method = O_DIRECT
innodb_lru_scan_depth = 4000
innodb_lock_wait_timeout = 10
innodb_rollback_on_timeout = 1
innodb_print_all_deadlocks = 1
innodb_online_alter_log_max_size = 4G
innodb_print_ddl_logs = 0
innodb_status_file = 1
#注意: 开启 innodb_status_output & innodb_status_output_locks 后, 可能会导致log_error文件增长较快
innodb_status_output = 0
innodb_status_output_locks = 1
innodb_sort_buffer_size = 67108864
innodb_adaptive_hash_index = 0
#开启NUMA支持
innodb_numa_interleave = ON
innodb_print_lock_wait_timeout_info = 1
#自动杀掉超过5分钟不活跃事务,避免行锁被长时间持有
kill_idle_transaction = 300

#innodb parallel query
loose-force_parallel_execute = OFF
loose-parallel_default_dop = 8
loose-parallel_max_threads = 96
temptable_max_ram = 8G

#pfs settings
performance_schema = 1
#performance_schema_instrument = '%memory%=on'
performance_schema_instrument = '%lock%=on'

接下来新建mysql用户和新建数据库主目录,并修改权限模式及属主

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ /sbin/groupadd mysql
$ /sbin/useradd -g mysql mysql -d /dev/null -s /sbin/nologin
$ mkdir -p /data/GreatSQL
$ chown -R mysql:mysql /data/GreatSQL
$ chmod -R 700 /data/GreatSQL

如果是在一个全新环境中首次启动GreatSQL数据库,可能会失败,因为在 mysqld_pre_systemd 的初始化处理逻辑中,需要依赖 /var/lib/mysql-files 目录保存一个临时文件

所以我们手动创建/var/lib/mysql-files 目录

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ mkdir -p /var/lib/mysql-files && chown -R mysql:mysql /var/lib/mysql-files

增加GreatSQL系统服务

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ vim /lib/systemd/system/greatsql.service
[Unit]
Description=GreatSQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]

# some limits
# file size
LimitFSIZE=infinity
# cpu time
LimitCPU=infinity
# virtual memory size
LimitAS=infinity
# open files
LimitNOFILE=65535
# processes/threads
LimitNPROC=65535
# locked memory
LimitMEMLOCK=infinity
# total threads (user+kernel)
TasksMax=infinity
TasksAccounting=false

User=mysql
Group=mysql
#如果是GreatSQL 5.7版本,此处需要改成simple模式,否则可能服务启用异常
#如果是GreatSQL 8.0版本则可以使用notify模式
#Type=simple
Type=notify
TimeoutSec=0
PermissionsStartOnly=true
ExecStartPre=/usr/local/GreatSQL-8.0.32-24-Linux-glibc2.28-x86_64/bin/mysqld_pre_systemd
ExecStart=/usr/local/GreatSQL-8.0.32-24-Linux-glibc2.28-x86_64/bin/mysqld $MYSQLD_OPTS
EnvironmentFile=-/etc/sysconfig/mysql
Restart=on-failure
RestartPreventExitStatus=1
Environment=MYSQLD_PARENT_PID=1
PrivateTmp=false

启动GreatSQL

把GreatSQL添加进环境变量

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ echo 'export PATH=/usr/local/GreatSQL-8.0.32-24-Linux-glibc2.28-x86_64/bin:$PATH' >> ~/.bash_profile
$ source ~/.bash_profile

执行下面的命令启动GreatSQL服务

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ systemctl start greatsql
$ systemctl status greatsql
● greatsql.service - GreatSQL Server
     Loaded: loaded (/usr/lib/systemd/system/greatsql.service; disabled; preset: disabled)
     Active: active (running) since Fri 2023-12-01 10:30:29 CST; 4s ago
       Docs: man:mysqld(8)
             http://dev.mysql.com/doc/refman/en/using-systemd.html
    Process: 712571 ExecStartPre=/usr/local/GreatSQL-8.0.32-24-Linux-glibc2.28-x86_64/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
   Main PID: 712708 (mysqld)
     Status: "Server is operational"
     Memory: 2.5G
        CPU: 4.549s
     CGroup: /system.slice/greatsql.service
             └─712708 /usr/local/GreatSQL-8.0.32-24-Linux-glibc2.28-x86_64/bin/mysqld

Dec 01 10:30:24 myarch systemd[1]: Starting GreatSQL Server...
Dec 01 10:30:28 myarch (mysqld)[712708]: greatsql.service: Referenced but unset environment variable evaluates to an empty string: MYSQLD_OPTS
Dec 01 10:30:29 myarch systemd[1]: Started GreatSQL Server.

在上面进行GreatSQL初始化时,会为 root@localhost 用户生成一个随机密码,记录在 error.log 日志文件中,例如下面这样:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ grep -i root /data/GreatSQL/error.log
... A temporary password is generated for root@localhost: ji!pjndiw5sJ

复制该密码,将用于首次登入GreatSQL所需。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ mysql -uroot -p
Enter password:

# 进入数据库后可以看到版本
Server version: 8.0.32-24

首次登入立刻提醒该密码已过期,需要修改,执行类似下面的命令修改即可:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
greatsql> alter user 'root'@'localhost' identified by 'GreatSQL@2022';
Query OK, 0 rows affected (0.02 sec)

GreatSQL数据库安装并初始化完毕

安装MySQL Shell

为了支持仲裁节点特性,需要安装GreatSQL提供的MySQL Shell发行包。打开GreatSQL下载页面找到

  • greatsql-shell-8.0.25-16-Linux-glibc2.28-x86_64.tar.xz

下载相应的MySQL Shell安装包(目前只提供二进制安装包)并解压

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ cd /usr/local
$ wget https://product.greatdb.com/GreatSQL-8.0.25-16/greatsql-shell-8.0.25-16-Linux-glibc2.28-x86_64.tar.xz
$ tar xf greatsql-shell-8.0.25-16-Linux-glibc2.28-x86_64.tar.xz

进入bin目录查看下缺少什么依赖

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ cd /usr/local/greatsql-shell-8.0.25-16-Linux-glibc2.28-x86_64/bin
$ ldd mysqlsh | grep "not found"
        libssl.so.1.1 => not found
        libcrypto.so.1.1 => not found
        libpython3.8.so.1.0 => not found

安装上缺失的依赖

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ pacman -S core/openssl-1.1
$ pacman -S archlinuxcn/python39

因为下载的Python版本过高,所以采用软连接的方式

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ ln -s /usr/lib/libpython3.9.so.1.0 /usr/lib64/libpython3.8.so.1.0

再次检查下还有没有缺失依赖

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ ldd mysqlsh | grep "not found"

没有缺失依赖的话,接下来就可以体验MySQL Shell了

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ /usr/local/greatsql-shell-8.0.25-16-Linux-glibc2.28-x86_64/bin/mysqlsh
MySQL Shell 8.0.25

Copyright (c) 2016, 2021, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
Other names may be trademarks of their respective owners.

Type '\help' or '\?' for help; '\quit' to exit.
WARNING: Found errors loading plugins, for more details look at the log at: /root/.mysqlsh/mysqlsh.log
 MySQL  Py > 

更多的Shell玩法请移步 图文结合丨带你轻松玩转MySQL Shell for GreatSQL

至此,GreatSQL在Arch Linux的成功安装之旅圆满结束。现在,您可以尽情感受GreatSQL数据库带来体验~

Enjoy GreatSQL :)

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-12-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 GreatSQL社区 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
MySQL Shell 8.0.32 for GreatSQL编译安装
GreatSQL 8.0.32-24已发布,配套的MySQL Shell也需要跟着升级一波,MySQL Shell版本从8.0.25升级到8.0.32后,也引入了一些不错的新特性。
老叶茶馆
2023/09/01
3470
MySQL Shell 8.0.32 for GreatSQL编译安装
RPM方式安装GreatSQL 8.0.25-16
部署前提:准备一个干净的系统,确认先前没有安装过MySQL、Mariadb等相关服务,造成不必要的冲突。
GreatSQL社区
2022/05/18
5480
在Linux下源码编译安装GreatSQL/MySQL
本次介绍如何利用Docker来将GreatSQL源码编译成二进制文件,以及制作二进制包、RPM包等。
老叶茶馆
2021/08/26
2.5K0
图文结合丨带你轻松玩转MySQL Shell for GreatSQL
MySQL Shell 是 MySQL 的一个高级客户端和代码编辑器,是第二代 MySQL 客户端。第一代 MySQL 客户端即我们常用的 MySQL 。除了提供类似于 MySQL 的 SQL 功能外,MySQL Shell 还提供 JavaScript 和 Python 脚本功能,并包括与 MySQL 一起使用的 API 。MySQL Shell 除了可以对数据库里的数据进行操作,还可以对数据库进行管理,特别是对MGR的支持,使用MySQL Shell 可以非常方便的对MGR进行搭建、管理、配置等
GreatSQL社区
2023/09/10
5210
图文结合丨带你轻松玩转MySQL Shell for GreatSQL
mysql-shell for GreatSQL 8.0.27编译安装及使用
由于GreatSQL 8.0.27版本中引入MGR仲裁节点(投票节点,ARBITRATOR)特性,MySQL提供的mysql-shell无法识别该特性,因此提供mysql-shell for GreatSQL版本。
GreatSQL社区
2022/03/28
5390
MySQL Shell 8.0.32 for GreatSQL编译二进制包
之前已经写过一篇前传 MySQL Shell 8.0.32 for GreatSQL编译安装,最近再次编译MySQL Shell二进制包时,发现了一些新问题,因此重新整理更新本文档。
老叶茶馆
2024/01/22
2060
MySQL Shell 8.0.32 for GreatSQL编译二进制包
官答丨操作系统升级 Openssl 导致 GreatSQL 无法启动
本问题来自讨论区群,用户使用数据库环境大概介绍如下: 名称版本操作系统CentOS 7系统内核版本3.10.0-1160.118.1.el7.x86_64openssl升级之前版本1.0.2kopenssl升级之后版本1.1.1w数据库版本GreatSQL-8.0.32-25 用户问题 用户提供的问题信息内容如下: 1、Openssl 版本升级之后 GreatSQL 无法启动报错如下: -- Unit mysqld.service has begun starting up. Jun 07 14:03:21 m-node1 mysqld[34078]: /usr/local/GreatSQL/bin/mysqld: /usr/local/openssl/lib/libcrypto.so: version `OPENSSL_1.0.1_EC' not found (required by /usr/local/GreatSQL/bin/../lib/private/libssl.so.10) Jun 07 14:03:21 m-node1 mysqld[34078]: /usr/local/GreatSQL/bin/mysqld: /usr/local/openssl/lib/libcrypto.so: version `libcrypto.so.10' not found (required by /usr/local/GreatSQL/bin/../lib/private/libssl.so.10) Jun 07 14:03:21 m-node1 systemd[1]: mysqld.service: control process exited, code=exited status=1 Jun 07 14:03:21 m-node1 systemd[1]: Failed to start MySQL Server. 2、用户经过检查,再次安装了 GreatSQL 的 rpm 依赖包,依然报错 so 动态库文件问题 $ yum install -y pkg-config perl libaio-devel numactl-devel numactl-libs net-tools openssl openssl-devel jemalloc jemalloc-devel perl-Data-Dumper perl-Digest-MD5 python2 perl-JSON perl-Test-Simple 3、将 GreatSQL 命令配置到环境变量 PATH 中,依然报错 so 动态库文件问题 $ ln -s /usr/local/GreatSQL-8.0.32-25-Linux-glibc2.17-x86_64 /usr/local/greatsql $ vim /etc/profile export PATH=$PATH:/usr/local/greatsql/bin $ source /etc/profile $ mysql -V mysql: /usr/local/openssl/lib/libcrypto.so: version `libcrypto.so.10' not found (required by mysql) mysql: /usr/local/openssl/lib/libssl.so: version `libssl.so.10' not found (required by mysql) 解答用户疑问 根据现象及报错内容分析,推测极可能是在 /usr/local 目录下安装了更高版本的 Openssl,导致动态库链接失败。 这种情况可以把 Openssl 下的 lib 库加载到 LD_LIBRARY_PATH 环境变量中。 解决用户问题 将 Openssl 下的 lib 库加载到 LD_LIBRARY_PATH 环境变量中。 意思也是为了,不将 /usr/local/openssl/lib 加载到 LD_LIBRARY_PATH 中了。 $ vim /etc/profile export LD_LIBRARY_PATH=/usr/lib64 $ source /etc/profile 使用ldd命令检查mysqld是否缺失依赖so库文件 $ ldd mysqld | grep ssl libssl.so.10 => /usr/local/GreatSQL-8.0.32-25-Linux-glibc2.17- x86_64/bin/./../lib/private/libssl.so.10 (0x00007f292ed72000) $ ldd mysql | grep ssl libssl.so => /lib64/libssl.so (0x000
GreatSQL社区
2024/07/06
1480
官答丨操作系统升级 Openssl 导致 GreatSQL 无法启动
技术分享 | 将GreatSQL添加到系统systemd服务
systemd 是Linux系统启动和服务器守护进程管理器,负责在系统启动或运行时,激活系统资源,服务器进程和其它进程,systemd被设计用来改进原来sysvinit中的多个缺点。
老叶茶馆
2021/07/09
1.6K0
GreatSQL 8.0.25-16初体验
打开链接 https://gitee.com/GreatSQL/GreatSQL/releases/GreatSQL-8.0.25-16 下载GreatSQL 8.0.25-16安装包,因为是CentOS 8.4 x86_64的环境,所以下载 el8*x86_64 字样的几个PRM包:
GreatSQL社区
2023/02/24
4090
3. 安装部署MGR集群 | 深入浅出MGR
> * GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源。
GreatSQL社区
2022/02/08
1.1K0
GreatSQL从单机到MGR扩展纪实
原有的业务系统跑在MySQL主从架构中,高可用通过脚本完成,但存在切换数据丢失和切换不及时风险,调研了高可用更稳定的MGR后,准备入手一试。本篇文章主要记录GreatSQL从单机扩展到MGR的详细过程,遇到的问题及解决方法。
GreatSQL社区
2023/09/10
2400
GreatSQL从单机到MGR扩展纪实
从零开始学习MySQL调试跟踪(2)
程序运行过程中可能会异常终止或崩溃,OS会把程序挂掉时的内存状态记录下来,写入core文件,这就叫 coredump,通过gdb结合core文件可以方便地进行调试。
GreatSQL社区
2023/08/10
3310
从零开始学习MySQL调试跟踪(2)
Percona Toolkit 神器全攻略(配置类)
pt-config-diff 概要 比较 MySQL/GreatSQL 配置文件和服务器变量 用法
GreatSQL社区
2024/06/21
1620
Percona Toolkit 神器全攻略(配置类)
openEuler、龙蜥Anolis、统信UOS系统下编译GreatSQL二进制包
为了能更好地支持更多操作系统及相关生态,我们决定发布openEuler、龙蜥Anolis、统信UOS三个操作系统下的GreatSQL二进制包。相应的二进制包可以访问gitee.com上的 GreatSQL项目 https://gitee.com/GreatSQL/GreatSQL/releases/tag/GreatSQL-8.0.25-17下载。
GreatSQL社区
2023/08/10
5820
openEuler、龙蜥Anolis、统信UOS系统下编译GreatSQL二进制包
官答丨初始化GreatSQL找不到数据目录或初始化数据字典失败
官答栏目 针对GreatSQL数据库中的问题,选取官方论坛和讨论群中的典型提问进行深入解答。内容涵盖数据库安装部署、配置优化、故障排查、性能测试等方面。
GreatSQL社区
2024/01/10
2690
官答丨初始化GreatSQL找不到数据目录或初始化数据字典失败
GreatSQL单机环境安装
《国产数据库之-GreatSQL》介绍了万里的GreatSQL数据库,在这篇文章中,我们尝试搭建一个单机版的环境。
bisal
2022/04/11
6960
GreatSQL单机环境安装
openEuler22+GreatSQL+dbops玩转MGR
openEuler22.03 LTS 是 openEuler 社区于 2022 年 3 月发布的开源操作系统(从系统版本的命名不难发现吧)。openEuler 社区的运营由华为为主导,社区以全球开源贡献者的合作,构建了这个高效、稳定和安全的操作系统。基于 Linux 内核的 openEuler 操作系统,支持 Kunpeng 以及其他处理器,旨在充分发挥计算芯片的潜力。它适用于数据库、大数据、云计算和人工智能等场景。通过社区合作,openEuler 构建了一个创新平台,创建了一个支持多处理器架构的统一开放操作系统,并推动了软件和硬件应用生态系统的繁荣。
GreatSQL社区
2023/08/11
3100
openEuler22+GreatSQL+dbops玩转MGR
编译GreatSQL with RocksDB引擎
RocksDB 是基于Facebook 开源的一种支持事务的、高度可压缩、高性能的MyRocks存储引擎,特别适用于高度压缩和大容量的数据。以下是一些关键特点:
老叶茶馆
2024/02/22
2060
编译GreatSQL with RocksDB引擎
技术分享 | 利用systemd管理MySQL单机多实例
有时候,我们需要在单机环境下跑多实例。在以前,一般是习惯用mysqld_multi来跑多实例。不过从CentOS 7开始引入systemd作为新的系统管理器后,用它来管理多实例也是很方便的。
老叶茶馆
2021/10/25
1.5K0
从零开始学习MySQL调试跟踪(1)
有时为了跟踪故障需要调试MySQL/GreatSQL源码,本文介绍如何在Linux下构建MySQL/GreatSQL源码调试环境。
GreatSQL社区
2023/08/10
5010
从零开始学习MySQL调试跟踪(1)
相关推荐
MySQL Shell 8.0.32 for GreatSQL编译安装
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验