zoukankan      html  css  js  c++  java
  • mysql 优化工具

    explain  profiling

    建议提供以下信息

    show table status like 'audit';
    show create table audit;
    show index from audit;
    check table audit;

    analyze table audit;

    analyze 并不检查表是否有问题,只是重新分析一下键的分布情况。
    check table/ repaire table 是检查和修复的语句

     set profiling=1;
    show profiles;
    show profile all for query 1G 

    sky@sky:~$ mysqlslap --create-schema=example --query="SELECT * FROM group_message force
    index(group_message_author_subject) WHERE author = '3' subject LIKE 'weiurazs%'" --
    iterations=10000
    Benchmark
    Average number of seconds to run all queries: 0.017 seconds
    Minimum number of seconds to run all queries: 0.010 seconds
    Maximum number of seconds to run all queries: 0.027 seconds
    Number of clients running queries: 1 SELECT * FROM [TABLE] FORCE INDEX (myindex2) WHERE [column1] = [value1] AND [column2] = [value2] ORDER BY [id] DESC LIMIT0, 10;

    insert ignore into

    当我们想用SQL_NO_CACHE来禁止结果缓存时发现结果和我们的预期不一样,查询执行的结果仍然是缓存后的结果。其实,SQL_NO_CACHE的真正作用是禁止缓存查询结果,但并不意味着cache不作为结果返回给query。

    mysql快速添加百万条记录的语句:

    使用Insert Select语句插入记录时,必须遵循以下原则。
    用Select语句选择数据时,不能从被插入数据的表中选择行。
    指定插入的表后所包含的字段数目必须与Select语句中返回的字段数目相同。
    指定插入的表后所包含的字段数据类型必须与Select语句中返回的字段数据类型相同或系统可以自动转换。
     

    复制代码 代码如下:

    INSERT INTO ler_items( classid, title, address, zipcode )
    SELECT classid, title, address, zipcode
    FROM ler_items
    使用上面的SQL语句,可以在很短的时间内将ler_items表添加百万记录,用于数据库的测试很有帮助
     
    命令行连接mysql数据库:

    进入命令行,windows cmd,连接:

    mysql -u 用户名 -p密码 -h 服务器IP地址 -P 服务器端MySQL端口号 -D 数据库名

    注意:

        (1)服务器端口标志-P一定要大些以区别于用户-p,如果直接连接数据库标志-D也要大写;

        (2)如果要直接输入密码-p后面不能留有空格如-pmypassword;

        (3)命令结束段没有';'分号。

    例子:

    mysql -u lzpddd -pmypassword -h 192.168.1.88 -P 3306 -D mydb

    D:wampinmysqlmysql5.1.33in>mysql -u wbcloud -pwbcloud123 -h 192.168.1.156
    -P 3306 -D linksus_cloud3

    查看Mysql数据库大小 
     
    1、进去指定schema 数据库(存放了其他的数据库的信息)
     
    use information_schema
    2、查询所有数据的大小
     
    select concat(round(sum(DATA_LENGTH/1024/1024),2), 'MB') as data from TABLES
     
    3、查看指定数据库的大小 
    比如说 数据库apoyl
     
    select concat(round(sum(DATA_LENGTH/1024/1024),2), 'MB') as data from TABLES where table_schema= 'apoyl' ;
    4、查看指定数据库的表的大小
    比如说 数据库apoyl 中apoyl_test表
     
    select concat(round(sum (DATA_LENGTH/1024/1024),2), 'MB') as data from TABLES where table_schema= 'apoyl' and table_name= 'apoyl_test' ;
  • 相关阅读:
    tp5.1 查询自定义排序(按照查询结果顺序排序)
    Laravel Auth 用户认证
    Laravel 文件上传
    Laravel 缓存操作
    Laravel 验证码
    第46章:TEB
    第45章:TLS回调函数
    第4章:逆向分析技术--32位软件逆向技术
    第43章:内核6中的DLL注入
    第42章:内核6中的会话
  • 原文地址:https://www.cnblogs.com/andydao/p/3898262.html
Copyright © 2011-2022 走看看