经过我的测试,已确定是内存不足,因为我把其中一个5000万行记录的表去掉之后能正常运行,所以应该就是内存不足
但是这不科学有木有,错误:FATAL: out of memory (unable to allocate 234104102 bytes)
234104102 bytes = 223GB
你逗我呢,223GB的内存。。。我虽然有10GB的内存但是并没有这么多,求问有没有解决方案,急求- -
下面贴出我的csft_mysql.conf文件的一部分,我定义了25个source和25个index,这里我只列出一部分,关键的东西都在这里面,想继续用Coreseek/Sphinx,不想换别的,求解决
source test
{
type = mysql
sql_host = 127.0.0.1
sql_user = root
sql_pass = root
sql_db = mydata
sql_port = 3306
sql_query_pre = SET NAMES utf8
sql_query = SELECT `uid`,1 AS `table_id`,`id`,`username`,`password`,`email`,`name`,`phone` FROM `test`
sql_attr_uint = table_id
}
index test
{
source = test
path = F:/coreseek-4.1-win32/var/data/test
docinfo = extern
mlock = 0
morphology = none
min_word_len = 1
html_strip = 0
charset_dictpath = F:/coreseek-4.1-win32/etc/
charset_type = zh_cn.utf-8
}
indexer
{
mem_limit = 256M
}
searchd
{
listen = 9312
read_timeout = 5
max_children = 1000
max_matches = 200
seamless_rotate = 1
preopen_indexes = 1
unlink_old = 1
pid_file = F:/coreseek-4.1-win32/var/log/searchd_mysql.pid
log = F:/coreseek-4.1-win32/var/log/searchd_mysql.log
query_log = F:/coreseek-4.1-win32/var/log/query_mysql.log
binlog_path =
}
|