MySQL日常使用手册

查看表结构文档

SELECT * FROM `XXX` PROCEDURE ANALYSE() \G;


查看表索引概览

SHOW INDEX FROM `XXX`;


查看字段详情

DESC `XXX`;


具体分析某个SQL的执行性能瓶颈

SET PROFILING=1;

SELECT * FROM `XXX` ORDER BY `id` ASC ;
SELECT * FROM `XXX` ORDER BY `name` ASC ;

SHOW PROFILES;
SHOW PROFILE FOR QUERY 1;
SHOW PROFILE ALL FOR QUERY 2;


SQL并发压力测试

mysqlslap --help;
mysqlslap -a -c 50 -i 5 -uroot -p123456;
mysqlslap --create-schema test -q "SELECT id FROM XXX WHERE type=1" -c 1000 -i 10 -uroot -p123456;

SQL慢日志

mysqldumpslow

MySQL随机插入某个范围的数字

set @from = 150;
set @to = 200;

SELECT floor(@from+rand() * (@to-@from+1))  as num;

MySQL函数、MySQL存储过程、MySQL建仿真测试表、MySQL批量生成百万、千万、亿级别大数据仿真测试数据

Mysql批量给表字段增加注释

$comment = [
    'user' => [
        'id' => '主键',
        'name' => '姓名'
    ],
    'account' => [
        'name' => '姓名',
        'type' => '类型'
    ]
];
$table = 'user';
$data = \Db::queryRow('SHOW CREATE TABLE `'.$table.'`');
$sqlArray = array_map(
    function($v)use($table, $comment){
        $field = explode('`', $v)[1];
        return 'ALTER TABLE `'.$table.'` MODIFY'.rtrim($v, ',').' COMMENT "'.
            (isset($comment[$table][$field]) ? addslashes($comment[$table][$field]) : '').'";';
    },
    array_filter(
        preg_split("/\n/isu", $data['Create Table']),
        function($v){
            return strpos(trim($v), '`') === 0;
        }
    )
);
var_dump($sqlArray);exit();

MySql 外键约束 之CASCADE、SET NULL、RESTRICT、空等类型分析和作用解读

空、RESTRICT、NO ACTION
删除:从表记录不存在时,主表才可以删除。删除从表,主表不变
更新:从表记录不存在时,主表才可以更新。更新从表,主表不变

CASCADE
删除:删除主表时自动删除从表。删除从表,主表不变
更新:更新主表时自动更新从表。更新从表,主表不变

SET NULL
删除:删除主表时自动更新从表值为NULL。删除从表,主表不变
更新:更新主表时自动更新从表值为NULL。更新从表,主表不变

MySql不同数据库之间表批量移动

SET GLOBAL group_concat_max_len=1​024​000​000;
SELECT CONCAT('RENAME TABLE ', GROUP_CONCAT('`default`.`', `TABLE_NAME`, '` TO `spilt_0`.`', `TABLE_NAME`, '`')) FROM INFORMATION_SCHEMA.`TABLES` WHERE `TABLE_SCHEMA`='default';

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HookPHP

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值