zoukankan      html  css  js  c++  java
  • 关于数据迁移的一次小故障

    关于数据迁移的一次小故障

    由于网站访问量不大,公司原来的数据库和网页程序放在同一台服务器上,随着服务器的网站推广的强度增大,网站的访问量也快速增长。因此昨天晚上将数据库迁移到单独的服务器上,并将mysql 5.1.50的版本升级到mysql 5.5.18

    采用的是先搭建mysql 5.5,然后从5.1.50上同步数据,再将网页的数据库配置更改到新的服务器上。这个过程本身没有任何问题,切换后一切正常。第二天,有人反映一个地方搜索出不来数据。抓取那个页面的SQL一分析,发现那个表上采用的全文索引来搜索数据,把该SQL拿到旧的服务器上执行可以出来数据。因此推测是全文索引的配置参数ft_min_word_len不一致导致,为了验证个问题分别在新的数据库服务器和旧的服务器上执行SHOW VARIABLES LIKE 'ft_min_word_len',发现旧的服务器该参数为1,新的为4。而用户查询的索引字为2个字符,因此查询不到。一查看配置文件,发现新的服务器忘记配置该参数了。太大意了。

    知道问题了,就该想办法修复了,有一点需要注意,更改了ft_min_word_len参数以后需要重建全文索引,修复步骤如下:

    1、备份my.cnf配置文件

    2、更改my.cnf配置文件,添加如下配置

    ft_min_word_len = 1

    3、重启mysql

    4、登录mysql执行如下操作(需要找出所有含有全文索引的表)

    USE `phpcmsv9` ;

    REPAIR TABLE  `v9_search`  QUICK;

    REPAIR TABLE  `v9_search_keyword`  QUICK;

    然后执行全文搜索,OK了!

     

    总结:这个故障是由于配置mysql配置文件的时候不小心造成该配置项的遗漏造成的,作为DBA,工作中还是需要细心细心再细心,多检查,养成细心的好习惯,避免类似低级错误出现。

  • 相关阅读:
    ARRAYLIST使用方法
    学习如何把数据库数据提取为XML(转)
    jquery常用技巧及常用方法列表
    邮件发送
    DataSet/XMl相互操作
    jquery Tab效果和动态加载
    Ajax 显示XML
    dropdownlist动态数据绑定
    sql 拼接
    javascriptxmlxslt操作
  • 原文地址:https://www.cnblogs.com/feihongwuhen/p/7169759.html
Copyright © 2011-2022 走看看