软件测试必备之数据库知识(四)

玩技站长 经验总结2396字数 1851阅读模式

大家放假玩的愉快吗?还是“妈妈啊,我想回家”?五一开工,继续我们五一前的知识点,数据库这一块的。

31、应该使用哪种方法创建用户?文章源自玩技e族-https://www.playezu.com/17395.html

  创建用户有几种方法:GRANT语句、CREATE USER语句和直接操作user表。一般情况, 最好使用GRANT或者CREATE USER语句,而不要直接将用户信息插入user表,因为user表中存储了全局级别的权限以及其他的账户信息,如果意外破坏了 user表中的记录,则可能会对 MySQL服务器造成很大影响。文章源自玩技e族-https://www.playezu.com/17395.html

 文章源自玩技e族-https://www.playezu.com/17395.html

  32、mysqldump备份的文件只能在MySQL中使用吗?文章源自玩技e族-https://www.playezu.com/17395.html

  mysqldump备份的文本文件实际是数据库的一个副本,使用该文件不仅可以在MySQL中恢 复数据库,而且通过对该文件的简单修改,可以使用该文件在SQL Server或者Sybase等其他数 据库中恢复数据库。这在某种程度上实现了数据库之间的迁移。文章源自玩技e族-https://www.playezu.com/17395.html

 文章源自玩技e族-https://www.playezu.com/17395.html

  33、如何选择备份工具?文章源自玩技e族-https://www.playezu.com/17395.html

  直接复制数据文件是最为直接、快速的备份方法,但缺点是基本上不能实现增量备份。备 份时必须确保没有使用这些表。如果在复制一个表的同时服务器正在修改它,则复制无效。备份 文件时,最好关闭服务器,然后重新启动0000000000000002222服务器。为了保证数据的一致性,需要在备份文件前, 执行以下SQL语句:文章源自玩技e族-https://www.playezu.com/17395.html

  CREATE PROCEDURE useInfo(IN u_name VARCHAR(50) character set gbk, OUT u_age INT)文章源自玩技e族-https://www.playezu.com/17395.html

  目录下即可。mysqlhotcopy 是一个 PERL 程序,它使用 LOCK TABLES、FLUSH TABLES 和 cp 或 scp来快速备份数据库。它是备份数据库或单个表的最快的途径,但它只能运行在数据库文件所在的 机器上,并且mysqlhotcopy只能用于备份MyISAM表。mysqlhotcopy适合于小型数据库的备份, 数据量不大,可以使用mysqlhotcopy程序每天进行一次完全备份。mysqldump将数据表导成SQL脚本文件,在不同的MySQL版本之间升级时相对比较合适, 这也是最常用的备份方法。mysqldump比直接复制要慢些。也就是把内存中的数据都刷新到磁盘中,同时锁定数据表,以保证复制过程中不会有新的 数据写入。这种方法备份出来的数据恢复也很简单,直接复制回原来的数据库文章源自玩技e族-https://www.playezu.com/17395.html

  34、平时应该打开哪些日志?

  日志既会影响MySQL的性能,又会占用大量磁盘空间。因此,如果不必要,应尽可能少地 开启日志。根据不同的使用环境,可以考虑开启不同的日志。例如,在开发环境中优化查询效率 低的语句,可以开启慢查询日志;如果需要记录用户的所有查询操作,可以开启通用查询日志; 如果需要记录数据的变更,可以开启二进制日志;错误日志是默认开启的。

 

  35、如何使用二进制日志?

  二进制日志主要用来记录数据变更。如果需要记录数据库的变化,可以开启二进制日志。 基于二进制日志的特性,不仅可以用来进行数据恢复,还可用于数据复制。在数据库定期备份的 情况下,如果出现数据丢失,可以先用备份恢复大部分数据,然后使用二进制日志恢复最近备份 后变更的数据。在双机热备情况下,可以使用MySQL的二进制日志记录数据的变更,然后将变 更部分复制到备份服务器上。

 

  36、如何使用慢查询日志?

  慢查询日志主要用来记录查询时间较长的日志。在开发环境下,可以开启慢查询日志来记 录查询时间较长的查询语句,然后对这些语句进行优化。通过配long_query_time的值,可以灵活地掌握不同程度的慢查询语句。

  37、是不是索引建立得越多越好?

  合理的索引可以提高查询的速度,但不是索引越多越好。在执行插入语句的时候,MySQL 要为新插入的记录建立索引。所以过多的索引会导致插入操作变慢。原则上是只有查询用的字段 才建立索引。

 

  38、如何使用查询缓冲区?

  查询缓冲区可以提高查询的速度,但是这种方式只适合查询语句比较多、更新语句比较少 的情况。默认情况下查询缓冲区的大小为〇,也就是不可用。可以修改queiy_cache_size以调整 查询缓冲区大小;修改query_cache_type以调整查询缓冲区的类型。在my.ini中修改 query_cache_size 和 query_cache_type 的值如下所示:

 

  表示开启查询缓冲区。只有在查询语句中包含SQL_NO_CACHE关键字 时,才不会使用查询缓冲区。可以使用FLUSH QUERY CACHE语句来刷新缓冲区,清理查询缓 冲区中的碎片。

玩技站长微信
添加好友自动发送入群邀请
weinxin
rainbow-shownow
玩技官方公众号
官方微信公众号
weinxin
PLAYEZU
 
  • 版权提示:本站仅供存储任何法律责任由作者承担▷诈骗举报◁▷新闻不符◁▷我要投稿◁
    风险通知:非原创文章均为网络投稿真实性无法判断,侵权联系2523030730
    免责声明:内容来自用户上传发布或新闻客户端自媒体,切勿!切勿!切勿!添加联系方式以免受骗。
  • 原创转载:https://www.playezu.com/17395.html
    转载说明: 点我前往阅读>>>
评论  2  访客  2
    • 热搜头条
      热搜头条 1

      文章不错支持一下吧

    匿名

    发表评论

    匿名网友
    确定