驭无殇1998 发表于 2024-3-18 11:20:40

GreatSQL 8.0.32-25二进制包安装依赖问题

操作系统 :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)



如图:



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


# 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
# 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_HOMEexport GREATSQL_HOME=/usr/local/greatsql# PATHexport PATH=$PATH:$GREATSQL_HOME/bin


然后就尝试执行一下mysql命令(因为我是想安装个mysql客户端,用来连接数据库)mysql -V
就报那个错了,并未启动greatsql

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



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,导致动态库链接失败。

试着修改

export LD_LIBRARY_PATH=/usr/lib64


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

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

$ 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 (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/user-manual/4-install-guide/3-1-centos-install.html#_3-4-%E5%A2%9E%E5%8A%A0greatsql%E7%B3%BB%E7%BB%9F%E6%9C%8D%E5%8A%A1

驭无殇1998 发表于 2024-3-19 15:32:56

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

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

好的好的,{:5_262:}

驭无殇1998 发表于 2024-3-19 15:37:15

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

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

噢噢,我是使用systemd的service方式启动的,虽然没直接添加变量,但是有使用指定环境变量去读取文件
EnvironmentFile=-/etc/sysconfig/mysql
我那边变量是写在这个文件里面的{:5_209:}

yejr 发表于 2024-3-19 16:01:41

驭无殇1998 发表于 2024-3-19 15:37
噢噢,我是使用systemd的service方式启动的,虽然没直接添加变量,但是有使用指定环境变量去读取文件
Env ...

功能和效果是一样滴 :)
页: [1]
查看完整版本: GreatSQL 8.0.32-25二进制包安装依赖问题