VSCODE 正则替换
中文姓名:
([\u4E00-\u9FA5]{2,3})
$1
身份证号:
([0-9xX]{18})\n
$1
中文姓名:
([\u4E00-\u9FA5]{2,3})
$1
身份证号:
([0-9xX]{18})\n
$1
跟sphinx一样。只支持linux系统。
https://manual.manticoresearch.com/Server_settings/Special_suffixes
可以支持简单的PHP脚本
#!/usr/bin/php
...
<?php for ($i=1; $i<=6; $i++) { ?>
table test_<?=$i?> {
type = rt
path = /var/lib/manticore/data/test_<?=$i?>
rt_field = subject
...
}
<?php } ?>
...
<?php
$confd_folder='/etc/manticore.conf.d/';
$files = scandir($confd_folder);
foreach($files as $file)
{
if(($file == '.') || ($file =='..'))
{} else {
$fp = new SplFileInfo($confd_folder.$file);
if('conf' == $fp->getExtension()){
include ($confd_folder.$file);
}
}
}
?>
如果查询语句返回结果太多的话,几千万,会出现lost connction的情况。
解决办法,分次查询:
其中uid是自增ID
source 索引名 : 数据库名{
sql_query_range = SELECT MIN(uid),MAX(uid) FROM 表名
sql_range_step = 1000
sql_query = SELECT *,53 AS table_id FROM 表名 WHERE uid>=$start AND uid<=$end
sql_attr_uint = table_id
}
经过测试改成1000就可以了。
参考官方的安装方法。直接apt install.
Ubuntu如下:其他系统自查。https://manual.manticoresearch.com/Installation/Debian_and_Ubuntu#Supported-releases:
wget https://repo.manticoresearch.com/manticore-repo.noarch.deb
sudo dpkg -i manticore-repo.noarch.deb
sudo apt update
sudo apt install manticore manticore-extra
安装完了之后无法连接MYSQL。
报错:MySQL source wasn’t initialized. Wrong name in dlopen?
搜了下:
https://manticoresearch.com/blog/mysql-source-wasnt-initialized-wrong-name-in-dlopen/
直接
apt install default-libmysqlclient-dev
安装完之后,好像还是报错,这次报错,连接mysql的sock文件不对,直接改my.cnf:
#socket = /tmp/mysql.sock
socket = /var/run/mysqld/mysqld.sock
这下可以了。
另外就是manticore的conf不支持include语法,如果索引多的话,会很长很长,几千行。
后来发现其实是支持的,参见https://kele.im/index.php/archives/318/
从WINDOWS迁移数据库文件到LINUX,在phpmyadmin管理的时候,提示“使用中”
原因是,数据文件扩展名大小写的问题。
myi => MYI
myd => MYD
即可
#!/bin/bash
read -p "请输入要更改的文件扩展名(小写): " old_extension
read -p "请输入目标文件扩展名(大写): " new_extension
for file in *.$old_extension; do
if [ -e "$file" ]; then
new_file=$(echo "$file" | sed "s/\.$old_extension$/\.$new_extension/")
mv "$file" "$new_file"
echo "已将 $file 重命名为 $new_file"
else
echo "没有找到符合条件的文件."
fi
done
echo "扩展名更改完成!"