我已经通过Windows(32位)安装wamp为我的测试服务器没有问题。现在我有适当的服务器运行centOs 6.4。我已将.so文件复制到
USR / lib64下/ MySQL的/插件/ damlev.so
然后我尝试运行其中一个sql语句来创建函数
创造功能damlev RETURNS INTEGER SONAME'damlev.so';
并收到以下错误
1126 - 无法打开共享库'damlev.so'(错误:22 /usr/lib64/mysql/plugin/damlev.so:错误的ELF类:ELFCLASS32)
我做错了什么。是因为服务器是64位吗?
编辑Bounty开始:
如果需要有关服务器的更多详细信息,我很乐意提供它们。我需要安装这个功能。
答案 0 :(得分:1)
您似乎正在尝试使用damlev.zip的Levi's site文件中包含的damlev.so
库,但该库是针对Ubuntu 32位系统的,因此它无法在Centos 64位系统上运行,因此您必须从源代码编译
作为先决条件,您必须安装g++
编译器和mysql开发库:
yum install gcc-c++ mysql-devel
此外,如果您没有wget
和unzip
,请使用以下命令安装它们:
yum install wget unzip
然后下载源代码并将其解压缩到某处:
cd tmp
mkdir damlev
cd damlev
wget http://samjlevy.com/wp-content/uploads/2011/03/damlev.zip
unzip damlev.zip
cd src
最后编译,安装插件并重启mysql服务器:
g++ -fPIC -I /usr/include/mysql/ -o damlev.so -shared damlev.cpp
cp damlev.so /usr/lib64/mysql/plugin/
service mysql restart
请注意,以上所有命令必须以“root”运行。