首页 Mysql专区
  • 【1】【原创】MySQL如何查看索引和表数据大小?

    blogdaren 2017-04-06   1022次来访
        >> 假定数据库名称为: shop  << 1. 查看数据大小: SELECT CONCAT(ROUND(SUM(data_length)/(1024*1024), 2), ' M') AS 'Total Data Size' FROM information_schema.TABLES WHERE table_s...
  • 【2】分享几组Navicat for MySQL 11注册码

    blogdaren 2016-11-29   1284次来访
    Navicat for MySQL注册码用来激活 Navicat for MySQL 软件,只要拥有 Navicat 注册码就能激活相应的 Navicat 产品。目前 Navicat 注册码比较难找,很多已经流传出来的注册码已经被官方注销掉,正规途径需要通过 Navicat 官网授权获取。为节省用户的时间,现将已经被禁用的Navicat for MySQL注册码进行收集整理。 Navic...
  • 【3】【原创】关于MySQL查询表数据大小的方法总结

    blogdaren 2016-07-06   1194次来访
    问题背景: 时间久了,数据量越来越大,作为管理员就要关心每个表里的数据大小、索引大小等等指标数据,以便做决策 解决方法: SHOW TABLE STATUS SELECT * FROM `information_schema`.`tables` WHERE table_schema = "db_name" AND table_name = "tb_name" L...
  • 【4】【原创】Error dropping database (can't rmdir "test" errno: 39)解决办法

    blogdaren 2016-06-28   1859次来访
    问题背景: 执行命令 drop database test 后报告错误:Error dropping database (can't rmdir "test" errno: 39) 问题原因: test数据库目录里有文件即目录不为空造成的 解决方法: 清空test数据库目录里的文件, 然后执行 drop database test 即可
  • 【5】【原创】忘记mysql root密码解决办法 --> 亲测很管用

    blogdaren 2016-06-17   1022次来访
    问题背景: 如题,忘记了 mysql root 密码, 意味着我们无法登陆 mysql 服务器,怎么办? 编辑MySQL配置文件: 首先停止mysql服务, 然后编辑mysql配置文件 /etc/my.cnf,在 [mysqld] 配置段添加如下一行: skip-grant-tables 重启MySQL服务: /etc/init.d/mysqld restart ...
  • 【6】【原创】mysql表里明明有数据却查询不到的原因以及解决思路

    blogdaren 2015-10-26   2122次来访
    问题背景: 和往常一样正常上班,打开数据表不带任何条件执行一条SQL查询语句,结果数据记录显示完好, 后来根据ID直接查询某条数据记录,却死活查不出来,但是like模糊查询数据也完好的出来了,甚是诡异。 问题原因: 1. 根据网上资料查证,认为是表ID数据不干净,也就是说可能被认为的修改过,带入了不可见的字符比如:空格、制表符等等, 存在这种可能性 2. 根据经...
  • 【7】【原创】通过explain显示using filesort来理解mysql之group by的本质

    blogdaren 2015-10-21   1746次来访
    mysql官方手册上有段说明: By default, MySQL sorts all GROUP BY col1, col2, … queries as if you specified ORDER BY col1, col2, … in the query as well. If you include an ORDER BY clause explicitly that co...
  • 【8】【原创】table "xxxx" is marked as crashed and should be repaired 解决方法

    blogdaren 2015-10-18   1177次来访
    问题背景: 数据表引擎MYISAM, 操作某数据表突然报告如下错误: table "xxxx" is marked as crashed and should be repaired 问题原因: 一般多是频繁查询和更新数据表造成索引错误 解决方法: 找到mysql的安装目录的 /path/to/mysql/bin/myisamchk 工具,在...
  • 【9】MySQL中数据库用户授权(grant)和撤销授权(revoke)

    blogdaren 2015-09-16   1245次来访
    MySQL 赋予用户权限命令的简单格式可概括为: grant 权限 on 数据库对象 to 用户 一、grant 普通数据用户,查询、插入、更新、删除 数据库中所有表数据的权利 grant select on testdb.* to common_user@'%' grant insert on testdb.* to common_user@'%' gr...
  • 【10】MySQL外键 Cannot add or update a child row错误的实例解释

    blogdaren 2015-09-05   1266次来访
    在MySQL 3.23.44版本后,InnoDB引擎类型的表支持了外键约束。 外键的使用条件: 1.两个表必须是 InnoDB表,MyISAM表暂时不支持外键(据说以后的版本有可能支持,但至少目前不支持); 2.外键列必须建立了索引,MySQL 4.1.2以后的版本在建立外键时会自动创建索引,但如果在较早的版本则需要显示建立; 3.外键关系的两个表的列必须是数据类型相似...
  • 【11】MySQL中启用InnoDB数据引擎的方法

    blogdaren 2015-08-13   1128次来访
    1、什么是存储引擎? Mysql中的数据用各种不同的技术存储在文件(或者内存)中。这些 技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。通过选择不同的技术,你能够获得额外的速度或者功能, 从而改善你的应用的整体功能。这些不同的技术以及配套的相关功能在MySQL中被称作存储引擎(也称作表类型)。MySql默认配置了许多不同的存储引 擎,可以...
  • 【12】如何查看MySQL的当前存储引擎?

    blogdaren 2015-08-13   1025次来访
    一般情况下mysql会默认提供多种存储引擎, 你可以通过下面的命令查看: 查看mysql现在已提供什么存储引擎: mysql> show engines; 查看mysql当前默认的存储引擎: mysql> show variables like '%storage_engine%'; 查看某个表用了什么引擎: mysql> show create t...
  • 【13】【mysql超时】mysql timeout各种超时的机制以及区别

    blogdaren 2015-08-10   2087次来访
    mysql的timeout有多少种,之间的区别时什么?本文从实测和代码分析的角度验证了不同的超时参数的作用。 接触网络编程就不得不提的就是超时,TCP建立连接的超时,数据报文发送/接收超时等等,mysql在超时上做足了功夫。 Variable_name Default Value connect_timeout 5 interactive_timeout 28800 net_read...
  • 【14】关于mysql中explain的那些事儿

    blogdaren 2015-07-31   1226次来访
    explain语法 有两种用法: 1.EXPLAIN tbl_name 2.EXPLAIN [EXTENDED] SELECT select_options 为了更好的说明它,我们需要建两张表,下面的语句用于创建一张测试用的订单表: CREATE TABLE `t_order` ( ...
  • 【15】mysql执行show processlist出现异常线程记录"unauthenticated user"解决方案

    blogdaren 2015-03-27   1393次来访
    问题背景: mysql 控制台执行 show processlist 出现异常线程记录"unauthenticated user" 问题截图: 问题原因: mysql进行反向DNS查询造成 反向解析原理: mysql接收到连接请求后,获得的是客户端的ip,为了更好的匹配mysql.user里的权限记录(某些是用hostname定义的)。如果...