【问题标题】:Error when using REGEXP in mysql在 mysql 中使用 REGEXP 时出错
【发布时间】:2016-06-29 09:57:27
【问题描述】:

mysql 中使用REGEXP 时出错 - REG#1139 -

出现错误'此版本的 PCRE 在偏移 0 处编译时不支持 UTF'

来自xamppubuntu中的正则表达式, PHP 版本 5.6.15 mysqlnd 5.0.11-dev - 20120503

【问题讨论】:

标签: php mysql apache


【解决方案1】:

从 ubuntu 14.04 升级到 16.04 后,我遇到了同样的错误。

我使用的是lampp 5.6.20,并且在使用REGEXP的请求中遇到了同样的错误。

使用以下命令,我检测到此库不支持 UTF-8:

$ /opt/lampp/bin/pcretest -C

...
No UTF-8 support
...

我发现我必须使用这些选项重新编译我的 lampp PCRE:

--enable-utf8 --enable-unicode-properties

为此,我下载了 pcre-8.38,并在提取的文件夹中执行了下一个命令:

$ ./configure --enable-utf8 --enable-unicode-properties
$ make
$ sudo make install

然后我将.libs文件夹中所有生成的文件复制到/opt/lampp/lib文件夹中:

$ sudo cp .libs/* /opt/lampp/lib

然后确认支持 UTF-8:

$ /opt/lampp/bin/pcretest -C

...
UTF-8 support
...

最后我重启了我的lampp(重启mysql或MariaDB):

$ sudo /opt/lampp/lampp restart

【讨论】:

  • 这对我有用。我唯一的问题是由于某种原因我不得不重新启动lampp两次。这应该被接受为正确答案。
猜你喜欢
  • 1970-01-01
  • 2013-01-28
  • 2015-08-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多