我想请教大家一个问题
目前准备开发在线进销存软件,想为每一个注册用户分配一个数据库,但大家又说这样不合理
但是如果做成一个库的话,因为每个商家都有几千个产品,这样的话一个产品表的数据很容易就达到了上百万了,我测试了一下,虽然已经建立了索引和全文搜索,但是模糊搜索还是要花近10秒,实在无法接受,大家有什么好的建议吗
测试数据库是mysql 5.0
目前准备开发在线进销存软件,想为每一个注册用户分配一个数据库,但大家又说这样不合理
但是如果做成一个库的话,因为每个商家都有几千个产品,这样的话一个产品表的数据很容易就达到了上百万了,我测试了一下,虽然已经建立了索引和全文搜索,但是模糊搜索还是要花近10秒,实在无法接受,大家有什么好的建议吗
测试数据库是mysql 5.0
select from person where name like '%张%'
分页查出1000记录,用时800ms
12.7. 全文搜索功能
12.7.1. 布尔全文搜索
12.7.2. 全文搜索带查询扩展
12.7.3. 全文停止字
12.7.4. 全文限定条件
12.7.5. 微调MySQL全文搜索你这种情况并不合适使用全文搜索功能,并且这种 like '%pattern%' 几乎无法优化。
sql语句应该是select * from tablename where contains(feildname,'keyword')>0
看着下边这篇文章配置就好了:
http://www.searchdatabase.com.cn/ShowContent_20126.htm