0

我已经从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' (errno: 2 )*

我错过了什么?

MySQL 版本是 5.5.20

4

2 回答 2

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';

对我来说效果很好。

于 2013-01-13T20:57:46.010 回答
0

尝试这个;

离开lib_mysqludf_preg.dll_plugin_dir

并移动libpcre.dll{MySQL Server}\bin

然后,执行"CREATE FUNCTION ...",

于 2012-09-15T17:36:50.263 回答