GreatSQL社区

搜索

[已解决] GreatSQL 8.0.32-25二进制包安装依赖问题

876 9 2024-3-18 11:20
操作系统 :centos7.9.2009

数据库版本:GreatSQL 8.0.32-25
问题现象:安装依赖,并解压二进制包后,使用mysql命令查看版本,报错依赖找不到


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)



如图:

企业微信截图_17107316549129.png

但是已经根据文档,将依赖安装好了,查看缺失的依赖也存在


[root@localhost local]# ldconfig -p | grep libcrypto
        libcrypto.so.10 (libc6,x86-64) => /lib64/libcrypto.so.10
        libcrypto.so.1.1 (libc6,x86-64) => /usr/local/openssl/lib/libcrypto.so.1.1
        libcrypto.so (libc6,x86-64) => /usr/local/openssl/lib/libcrypto.so
        libcrypto.so (libc6,x86-64) => /lib64/libcrypto.so
You have mail in /var/spool/mail/root
[root@localhost local]# ldconfig -p | grep libssl
        libssl3.so (libc6,x86-64) => /lib64/libssl3.so
        libssl.so.10 (libc6,x86-64) => /lib64/libssl.so.10
        libssl.so.1.1 (libc6,x86-64) => /usr/local/openssl/lib/libssl.so.1.1
        libssl.so (libc6,x86-64) => /usr/local/openssl/lib/libssl.so
        libssl.so (libc6,x86-64) => /lib64/libssl.so




请问该怎么解决?


下面是安装过程:
1.下载安装包,并解压到/usr/local/目录
2.建立软链接 : ln -s /usr/local/GreatSQL-8.0.32-25-Linux-glibc2.17-x86_64 /usr/local/greatsql
3.添加环境变量:
vim /etc/profile
# GREATSQL_HOME
export GREATSQL_HOME=/usr/local/greatsql
# PATH
export PATH=$PATHGREATSQL_HOME/bin



然后就尝试执行一下mysql命令(因为我是想安装个mysql客户端,用来连接数据库)
mysql -V

就报那个错了,并未启动greatsql


报错后,我就尝试安装依赖:
yum install -y perl libaio-devel numactl-develnumactl-libs net-tools openssl openssl-devel pkg-config
安装完后发现还是不行。。。。

过程就是这样




全部回复(9)
yejr 2024-3-18 16:04:18
请贴出从下载到安装的详细过程
驭无殇1998 2024-3-18 17:12:57
yejr 发表于 2024-3-18 16:04
请贴出从下载到安装的详细过程

已添加过程。。。。
yejr 2024-3-18 17:54:42
看起来应该是你在 /usr/local 目录下安装了更高版本的openssl,导致动态库链接失败。

试着修改

  1. export LD_LIBRARY_PATH=/usr/lib64
复制代码


即,不将 /usr/local/openssl/lib/ 加载到 LD_LIBRARY_PATH 中。

正常的应该是类似下面这样

  1. $ ldd mysqld | grep ssl
  2.         libssl.so.10 => /usr/local/GreatSQL-8.0.32-25-Linux-glibc2.17-x86_64/bin/./../lib/private/libssl.so.10 (0x00007f292ed72000)

  3. $ ldd mysql | grep ssl
  4.         libssl.so => /lib64/libssl.so (0x00007fdfc566d000)
复制代码
驭无殇1998 2024-3-18 18:06:46
yejr 发表于 2024-3-18 17:54
看起来应该是你在 /usr/local 目录下安装了更高版本的openssl,导致动态库链接失败。

试着修改

啊,对,修改后没问题了!!!!
驭无殇1998 2024-3-19 09:09:48
yejr 发表于 2024-3-18 17:54
看起来应该是你在 /usr/local 目录下安装了更高版本的openssl,导致动态库链接失败。

试着修改

补充说明,若是要在这样的环境下启动greatsql,使用
export LD_LIBRARY_PATH=/usr/lib64
无法让greatsql正确读取动态依赖
要将配置写到文件中:

echo "LD_LIBRARY_PATH=/usr/lib64" >> /etc/sysconfig/mysql

然后重新加载

ldconfig

这时再启动greatsql就可以了
yejr 2024-3-19 13:49:38
驭无殇1998 发表于 2024-3-19 09:09
补充说明,若是要在这样的环境下启动greatsql,使用
export LD_LIBRARY_PATH=/usr/lib64
无法让greatsql ...

如果是终端命令行下启动GreatSQL,这种方式是可以的

如果是用systemd等方式启动GreatSQL,修改systemd的service文件,添加 LD_LIBRARY_PATH 这个环境变量参数即可,参考 https://greatsql.cn/docs/8032-25 ... F%E6%9C%8D%E5%8A%A1
驭无殇1998 2024-3-19 15:32:56
yejr 发表于 2024-3-19 13:49
如果是终端命令行下启动GreatSQL,这种方式是可以的

如果是用systemd等方式启动GreatSQL,修改systemd的 ...

好的好的,
驭无殇1998 2024-3-19 15:37:15
yejr 发表于 2024-3-19 13:49
如果是终端命令行下启动GreatSQL,这种方式是可以的

如果是用systemd等方式启动GreatSQL,修改systemd的 ...

噢噢,我是使用systemd的service方式启动的,虽然没直接添加变量,但是有使用指定环境变量去读取文件
EnvironmentFile=-/etc/sysconfig/mysql
我那边变量是写在这个文件里面的
yejr 2024-3-19 16:01:41
驭无殇1998 发表于 2024-3-19 15:37
噢噢,我是使用systemd的service方式启动的,虽然没直接添加变量,但是有使用指定环境变量去读取文件
Env ...

功能和效果是一样滴 :)
驭无殇1998

22

主题

0

博客

181

贡献

中级会员

Rank: 3Rank: 3

积分
297

勤学好问(铜)助人为乐(银)

合作电话:010-64087828

社区邮箱:greatsql@greatdb.com

社区公众号
社区小助手
QQ群
GMT+8, 2024-11-23 19:31 , Processed in 0.026631 second(s), 25 queries , Redis On.
快速回复 返回顶部 返回列表