随笔分类 -  [05]数据之库

摘要:直接查询出日期数据。方便导出Excel。 阅读全文
posted @ 2019-02-16 12:59 TBHacker 阅读(936) 评论(0) 推荐(0)
摘要:``` SELECT ub.telphone, SUM(IF(b.type = 1 AND b.level = 1, 1, 0)) AS type11, SUM(IF(b.type = 1 AND b.level = 2, 1, 0)) AS type12, SUM(IF(b.type = 2 AN 阅读全文
posted @ 2019-02-13 13:44 TBHacker 阅读(2225) 评论(0) 推荐(0)
摘要:1.创建 2.修改 Tips:数据库名不需要加引号。 阅读全文
posted @ 2019-01-16 16:47 TBHacker 阅读(4373) 评论(0) 推荐(0)
摘要:很奇怪,很邪门。 content字段用的是text格式,按理说不会出现数据太长的问题。 后来搜索了一下,需要设置sql_mode。或者设为, 或者设为空, 可是重启之后发现又变了 这个时候需要配置文件中修改了,my.cnf 一开始修改/etc/my.cnf 重启了,总是不生效,都开始怀疑人生了。 原 阅读全文
posted @ 2018-12-25 10:46 TBHacker 阅读(6380) 评论(0) 推荐(0)
摘要:score排第一,查询时间很快。age排第三,查询要1秒多时间。 没有复合索引,都需要好几秒时间。复合索引有一定的效果,但是单独查询时,对排第一的更有效。 调换一下顺序,现在将age排第一。 排第一很重要。 只要带到age,查询就很快。 联合索引中,第一个位置很重要。 阅读全文
posted @ 2018-12-18 14:47 TBHacker 阅读(286) 评论(0) 推荐(0)
摘要:复合索引不是那么容易被catch到的。 两个查询条件都是等于的时候,才会被catch到。 查询条件中,如果有大于号。那么优先抓取等于号对应的索引,也就是sex对应的索引。经过索引的一番折腾,查询时间反而更长了。 即便是把score放到前面,一样的效果。 两个条件都为等于的时候,索引的效果就有点明显了 阅读全文
posted @ 2018-12-18 11:37 TBHacker 阅读(306) 评论(0) 推荐(0)
摘要:两张表,结构相同,数据内容相同。唯一不同的就是是否包含索引。tf_user_index表中包含索引。 这100w数据,我造了近一天时间。 score字段,加了索引。 很明显,加了索引的查询要快很多。 sql会根据条件去索引中查找,然后去表中查找。如果在索引中匹配的越多,那么查找的时间就越长,索引的意 阅读全文
posted @ 2018-12-18 10:54 TBHacker 阅读(668) 评论(0) 推荐(0)
摘要:单个索引与复合索引 在表中的多个字段组合上创建的索引,只有在查询条件中使用了这些字段的左边字段时,索引才会被使用,使用组合索引时遵循最左前缀集合。 如果我们创建了(username,sex,age)的复合索引,那么其实相当于创建了: (username,sex,age),(username,sex) 阅读全文
posted @ 2018-12-17 13:14 TBHacker 阅读(3317) 评论(0) 推荐(0)
摘要:程序1 添加10W数据 10W条数据,用时近85分钟。上面的代码,需要的内存少一些。执行的时间比较久。 程序2 添加10W数据 用时不到6分钟。 insertAll 方法生成的sql。 INSERT INTO ( , , , ) VALUES ( 100001,'user100001',2,47 ) 阅读全文
posted @ 2018-12-17 11:39 TBHacker 阅读(369) 评论(0) 推荐(1)
摘要:首先要确保数据库存在,如果不存在则创建 方法1 source 很智能,很方便,很快捷。 你可以执行很多次都没有关系。 可以执行数据库,可以执行单个表,都是可以的。 如果sql中是整个数据库,那么source之后,整个数据库都变了。如果只是整个表的数据,那么整个表的数据都变了。 其是它就相当于,将sq 阅读全文
posted @ 2018-12-15 17:04 TBHacker 阅读(5629) 评论(0) 推荐(0)
摘要:查看是否开启服务 查看my.cnf cat /etc/my.cnf Example MySQL config file for small systems. This is for a system with little memory ( 阅读全文
posted @ 2018-11-29 11:54 TBHacker 阅读(18323) 评论(1) 推荐(0)
摘要:``` CREATE DATABASE CHARACTER SET utf8 COLLATE utf8_general_ci; 设置utf8之后,不容易出现中文乱码。 阅读全文
posted @ 2018-11-12 11:14 TBHacker 阅读(8304) 评论(0) 推荐(0)
摘要:``` // 随机取9个 $rand_sql = "SELECT FROM WHERE ( = ((SELECT MAX( ) FROM ) (SELECT MIN( ) FROM )) RAND() + (SELECT MIN( ) FROM )) AND = 1 AND = 0 LIMIT 9" 阅读全文
posted @ 2018-09-20 15:18 TBHacker 阅读(2092) 评论(0) 推荐(0)
摘要:局部清理就可以了,做好备份! 阅读全文
posted @ 2018-09-19 10:43 TBHacker 阅读(423) 评论(0) 推荐(0)
摘要:命令行下具体用法如下: mysqldump u用戶名 p密码 d 数据库名 表名 脚本名; 导出整个数据库结构和数据 导出单个数据表结构和数据 导出整个数据库结构(不包含数据) 导出单个数据表结构(不包含数据) tips:密码必须连着写! 阅读全文
posted @ 2018-08-01 10:37 TBHacker 阅读(255) 评论(0) 推荐(0)
摘要:数据表是项目的基础。 数据表,服务于业务,脱离业务的数据表是没有意义的。 数据表,不存在最完美,只存在是否能够满足现有业务。 数据表是需求的体现,根据框图,和需求文档,抽象出合理的数据模型。 根据逐渐积累的建表经验,完成表的创建。 表与表之前,通过逻辑外键来关联关系。 选择合适的表名称,选择合适的字 阅读全文
posted @ 2018-06-13 11:31 TBHacker 阅读(299) 评论(0) 推荐(0)
摘要:安装mycli 1.确保有安装python 2.确保有安装pip 3.进入su模式,以管理员身份安装 4.安装 5.登录 很好很强大,自动提醒。 6.登录远程服务器,前提是远程的用户支持外部连接。 阅读全文
posted @ 2018-06-02 12:23 TBHacker 阅读(1488) 评论(0) 推荐(0)
摘要:使用pt query digest 也可以到官网 下载安装 查看帮助 使用 会发现有很多统计信息提供!非常方便。 如果通过日志发现问题? 阅读全文
posted @ 2018-05-31 01:22 TBHacker 阅读(563) 评论(0) 推荐(0)
摘要:通过mysqldumpslow来分析日志。 将mysql加入到全局变量中!!! 前提是这个日志文件需要设置可访问权限。 最好还是弄一个软连接到 下面。 列出了最慢的三条日志信息。 sudo mysqldumpslow t 3 /tmp/mysql slow.log Reading mysql slo 阅读全文
posted @ 2018-05-31 00:56 TBHacker 阅读(416) 评论(0) 推荐(0)
摘要:sql与索引优化 数据库表结构优化 系统配置 硬件 慢日志查询没有开启,可以开启一下。 找到my.cnf,添加如下内容 重启mysql。 这时候再看,已经开启了慢查询日志。 如果更改日志目录位置 比如,更改为 至少需要将log目录所有者设置为mysql:mysql。 这样重启mysql的时候,才能自 阅读全文
posted @ 2018-05-27 23:55 TBHacker 阅读(13865) 评论(0) 推荐(1)