小蚂蚁  
风雨过后才见彩虹
公告

  • —————————————
    李丽君
    软件测试工作者
    广东籍贯的海南人
    北京生活12年
    目前在深圳

    邮箱:
    llj2003hbdd@163.com
    —————————————
    说明:本Blog中的内容均为本人原创或转载,本人依法保留Blog内原创文章的所有权利,如需转载,请注明作者及出处。未经许可,不得将本Blog内文章用于任何盈利性用途。
    —————————————
日历
<2008年6月>
25262728293031
1234567
891011121314
15161718192021
22232425262728
293012345

导航

常用链接

留言簿(174)

随笔分类(189)

0--感兴趣的网站

1--国内测试网站

2--测试同行的blog

3--开发好友的blog

最新评论

 
编写背景:
              最近这两周收到测试新人发来的邮件颇多;在众多邮件中,还频繁的有提醒更新简历的邮件,上周末抽空更新了一下,竟然有猎头找上门来,被吓了一跳。
       测试环境迁移的工作已经过了60%,在迁移完毕后,在数据库上遇到了一些问题和现象;花费了不少时间,最终问题给解决了,非常有必要记录下来,因为
       通过GOOGLE搜索来的信息,没有发现一个是有效指导如何解决问题的办法。自己必须要记录下来,万一那天要用,就不用搜索了。错误日志比Google宝贝是此次解
       决mysql数据库中的问题得到的最大感想。
                                                               
                                                                                   错误日志比GOOGLE宝贝!!!!

      问题及现象1:
              在home目录下安装了一个mysql,此mysql保存了一部分测试数据,现在需要把线上的测试数据导入到mysql数据库中,发现数据文件非常的大,
        导入会占满空间,现在,需要把home目录下的mysql移动到一个大的目录文件home1,确保home空间可足够运行。

      解决办法:
      1、停止mysql服务,具体是:yinst stop mysql_server
      2、把/home/y/share/mysql  目录文件拷贝到新的目录文件 /home1/y/share/mysql
      3、把/home/y/logs/mysql 目录文件拷贝到新的目录文件/home1/y/logs/mysql
             修改/home1/y/logs/ 中的mysql目录权限的拥有者是mysql,用户组是users,文件权限是775
             修改命令是:sudo chown -R mysql mysql/ ;sudo chgrp -R users mysql/ ;sudo chmod 775 mysql/  
      4、把/home/y/var/mysql 目录文件拷贝到新的目录文件 /home1/y/var/mysql ,
             修改/home1/y/var/ 中的mysql目录权限的拥有者是mysql,用户组是users,文件权限是775
             修改命令是:sudo chown -R mysql mysql/ ;sudo chgrp -R users mysql/ ;sudo chmod 775 mysql/
     5、把/home/y/conf/mysql 目录文件拷贝到新的目录文件 /home1/y/conf/mysql ,
            修改/home1/y/conf/ 中的mysql目录权限的拥有者是mysql,用户组是mysql,文件权限是775
            修改命令是:sudo chown -R mysql mysql/ ;sudo chgrp -R mysql mysql/ ;sudo chmod 775 mysql/
     6、在home1目录下创建目录tmp,tmp目录文件操作权限是:777;sudo chmod 777 /home1/tmp
     7、修改mysql的my.cnf配置文件,把文件中的home名改成home1
     8、启动mysql服务,具体是:yinst start mysql_server
     9、进入数据库,把大量的测试数据导入数据库中


    问题及现象2:
           在测试机器上,有一个mysql装在了home目录,另一个mysql被移动到home1,home的磁盘空间比较小,测试数据少,mysql数据主要用于功能测试;home1上的
     磁盘空间比较大,测试数据大,mysql数据主要用于性能测试;问题:当作功能测试时,如何设置目前使用的数据库是home目录下的;当作性能测试时,如何设
     置目前使用的数据库是home1目录下的。

     解决办法:
    1、复制home目录mysql的my.cnf文件,具体路径是:/etc/my.cnf,新命名为my_new.cnf文件
    2、修改my_new.cnf文件中的信息,把文件中的home名改成home1,保存到目录文件:/home/y/etc/
    3、当要用功能测试数据库时,停止mysql服务,执行命令:sudo ln -s /home/y/etc/my.cnf my.cnf;执行完毕,启动mysql服务
    4、当要用性能测试数据库时,停止mysql服务,执行命令:sudo ln -s /home/y/etc/my_new.cnf my.cnf;执行完毕,启动mysql服务

    备注和说明:
                 在处理上面的两个问题中,遇到了很多问题,其中就有一个:发现数据库服务启动不起来;mysql.sock文件找不到,这时可查看mysql的错误日志进行分析,比在
          GOOGLE中输入“mysql.sock文件”的搜索结果看解决办法快,并且定位准确。通过错误日志分析,最后确定是把/home/y/var/mysql 目录文件拷贝到新的目录
          文/home1/y/var/mysql 后,没有给目录文件授权为mysql,导致mysql服务启动时,无法初始化创建mysql.sock文件。
          具体mysql的log日志文件地址,可以在my.cnf文件中查看到,常用的日志文件有:mysql.log、mysqld.err。

     问题及现象3:
            需要把mysql数据库中的某一张表导入到另一个数据库中
    
      解决办法:
           1、导出数据库表文件,具体操作命令:mysqldump -u root ncp2 alimama_member >/tmp/alimama_member.sql
           2、导入数据库表文件,具体操作命令:mysql -uroot aliads<~/alimama_member.sql

       最后总结:在日常所测试的软件,一定要打印错误日志,通过错误日志,可以分析程序是那个地方出了问题。在查找问题原因时,如果日志不管用,可以加调试信息
打印出来用于调试程序。这个也非常管用,我在大学编程时经常用这一办法。

posted on 2008-06-26 00:50 lijun 阅读(550) 评论(0)  编辑  收藏 所属分类: 测试环境维护实践

只有注册用户登录后才能发表评论。


网站导航:
 
 
Copyright © lijun Powered by: 博客园 模板提供:沪江博客