我已从http://www.mysqludf.org/lib_mysqludf_preg/下载了Windows二进制文件,但我在安装时遇到了问题。
如果我运行命令SHOW VARIABLES LIKE '%plugin%'
,它会输出目录'c:/wamp/bin/mysql/mysql5.5.20/plugin',所以这就是我放置2个dll文件的位置。
我重新启动服务器,然后尝试:
USE mysql;
CREATE FUNCTION lib_mysqludf_preg_info RETURNS STRING SONAME 'lib_mysqludf_preg.dll';
但MySQL只是说:*#1126 - 无法打开共享库'lib_mysqludf_preg.dll'(错误号:2)*
我错过了什么?
MySQL版本是5.5.20
答案 0 :(得分:2)
我尝试在Wamp上安装Windows二进制文件,但是我收到了与您相同的错误消息。
我认为您可以从http://www.mysqludf.org/lib_mysqludf_preg/下载的标准编译二进制文件仍然不支持64位版本的Wamp。我尝试卸载64位版本的Wamp,并安装了32位版本,我可以使用以下步骤使其工作:
libpcre.dll
复制到MySql bin目录(例如c:\wamp\bin\mysql\mysql5.5.24\bin
)lib_mysqludf_preg.dll
复制到MySql插件目录(例如c:\wamp\bin\mysql\mysql5.5.24\lib\plugin
)然后你可以启动它:
USE mysql;
CREATE FUNCTION lib_mysqludf_preg_info RETURNS STRING SONAME 'lib_mysqludf_preg.dll';
CREATE FUNCTION preg_capture RETURNS STRING SONAME 'lib_mysqludf_preg.dll';
CREATE FUNCTION preg_check RETURNS INTEGER SONAME 'lib_mysqludf_preg.dll';
CREATE FUNCTION preg_replace RETURNS STRING SONAME 'lib_mysqludf_preg.dll';
CREATE FUNCTION preg_rlike RETURNS INTEGER SONAME 'lib_mysqludf_preg.dll';
CREATE FUNCTION preg_position RETURNS INTEGER SONAME 'lib_mysqludf_preg.dll';
对我而言,它运作良好。
答案 1 :(得分:0)
试试这个;
将lib_mysqludf_preg.dll
保留在plugin_dir
并将libpcre.dll
移至{MySQL Server}\bin
然后,执行"CREATE FUNCTION ...",