
MySQL
haijiege
这个作者很懒,什么都没留下…
展开
-
MySQL中my.ini的位置
很多人都说MySQL中的my.ini在MySQL的安装目录中或在C:\windows中,可是我找了半天,根本没找到。后来看到有人说在C:\promgranData中,于是我又开始找,发现我的C盘并没有promgranData,我整个人又不好了;再后来,看到有人说my.ini可能会被隐藏,于是我设置将隐藏的文件显示,然而并没有在MySQL的安装目录中和在C:\windows中找到任何转载 2017-09-08 19:18:14 · 565 阅读 · 0 评论 -
mysql REGEXP 正则的实现两个字符串组的匹配
最近MySQL版块中类似问题出现得比较多。总结了一下。 由于某些原因,有时候我们没有按照范式的设计准则而把一些属性放到同一个字符串字段中。比如个人兴趣,有时候我们设计表为 create table members (uid int primary key,uname varchar(20),hobby varchar(100)); 表中内容如下 mysql> select * from me...转载 2018-05-14 11:26:27 · 3783 阅读 · 1 评论 -
Mysql 获取排列序号
MySQL中可以使用变量产生行号,下面是2个简单例子:使用工具:MySQL Workbench说明:表heyf_10中字段,empid(员工工号)、deptid(部门编号)、salary(薪资);rownum是自定义变量,表示行号。 对员工按照部门进行分组,分组后对相同部门的员工按照工资高低排序,并显示排序序号。rownum:自定义变量,表示行号;pdept:临时存放员工所属部门号;rank:部门...转载 2018-05-15 16:49:39 · 2725 阅读 · 0 评论 -
索引失效原因总结
今天一个同事突然问我索引为什么失效。说实在的,失效的原因有多种:但是如果是同样的sql如果在之前能够使用到索引,那么现在使用不到索引,以下几种主要情况:1. 随着表的增长,where条件出来的数据太多,大于15%,使得索引失效(会导致CBO计算走索引花费大于走全表)2. 统计信息失效 需要重新搜集统计信息3. 索引本身失效 需要重建索引下面是一些不会使用到索引的原因...原创 2018-10-19 16:10:36 · 1127 阅读 · 0 评论 -
MySql数据库备份与恢复——使用mysqldump 导入与导出方法总结
转载自:https://blog.youkuaiyun.com/helloxiaozhe/article/details/77680255MySql数据库备份与恢复——使用mysqldump 导入与导出方法总结mysqldump客户端可用来转储数据库或搜集数据库进行备份或将数据转移到另一个sql服务器(不一定是一个mysql服务器)。转储包含创建表和/或装载表的sql语句。ps、如果在服务器上进...转载 2018-10-22 18:16:11 · 1098 阅读 · 0 评论 -
十分钟了结MySQL information_schema
转载自:https://www.cnblogs.com/shengdimaya/p/6920677.htmlinformation_schema数据库是MySQL系统自带的数据库,它提供了数据库元数据的访问方式。感觉information_schema就像是MySQL实例的一个百科全书,记录了数据库当中大部分我们需要了结的信息,比如字符集,权限相关,数据库实体对象信息,外检约束,分区,压缩表,...转载 2018-10-22 18:24:32 · 148 阅读 · 0 评论 -
MySQL--启动和关闭MySQL服务
1.Windows下启动服务 mysqld --console 或 net start mysql 关闭服务 mysqladmin -uroot shudown 或 net stop mysql 2.Linux下启动服务 service mysql start 关闭服务 service mysql stop 重启服务...原创 2018-11-07 18:31:17 · 397 阅读 · 0 评论 -
navicat 快捷键
1.ctrl+q 打开查询窗口2.ctrl+/ 注释sql语句3.ctrl+shift +/ 解除注释4.ctrl+r 运行查询窗口的sql语句5.ctrl+shift+r 只运行选中的sql语句6.F6 打开一个mysql命令行窗口7.ctrl+l 删除一行8.ct...原创 2018-11-14 18:22:08 · 659 阅读 · 0 评论 -
count(1)、count(*)与count(列名)的执行区别
执行效果:1. count(1) and count(*)当表的数据量大些时,对表作分析之后,使用count(1)还要比使用count(*)用时多了! 从执行计划来看,count(1)和count(*)的效果是一样的。 但是在表做过分析之后,count(1)会比count(*)的用时少些(1w以内数据量),不过差不了多少。 如果count(1)是聚索引,id,那肯定是count...转载 2018-12-14 17:09:38 · 114449 阅读 · 8 评论 -
Mysql跨表更新 多表update sql语句总结
Mysql跨表更新一直是大家所关心的话题,本文介绍mysql多表 update在实践中几种不同的写法,需要的朋友可以参考下假定我们有两张表,一张表为Product表存放产品信息,其中有产品价格列Price;另外一张表是ProductPrice表,我们要将ProductPrice表中的价格字段Price更新为Price表中价格字段的80%。 在Mysql中我们有几种手段可以做到这一点,一种是upda...转载 2018-04-08 18:52:24 · 14342 阅读 · 4 评论 -
Mysql 分组聚合实现 over partition by 功能
mysql中没有类似oracle和postgreSQL的 OVER(PARTITION BY)功能. 那么如何在MYSQL中搞定分组聚合的查询呢 先说结论: 利用 group_concat + substr等函数处理 例如: 订单表一张, 只保留关键字段iduser_idmoneycreate_time115014205200002110014205200103210014205200204220...转载 2018-03-06 17:57:55 · 2344 阅读 · 0 评论 -
MySQL字符串中抽取数值的方法
MySQL的字符串函数非常多,以至于有时候我不知道该如何灵活的使用这些函数。字符串基本信息函数 collation convert,char_length等加密函数 password(x),encode, aes_encrypt字符串连接函数 concat(x1,x2,….)修剪函数 trim,ltrim,rtrim子字符串操作函数 substring(x,start,len...转载 2018-03-06 16:32:04 · 14741 阅读 · 1 评论 -
group_concat 长度限制修改办法
group_concat函数的功能是将某一字段的值按指定的字符进行累加,系统默认的分隔符是逗号1.先举一个简单的例子 select group_concat(f_a) from t_one group by f_b; 按f_b进行分组查询,将每组中的f_a进行累加。2.修改默认的分隔符 select group_concat(f_a separator '_') from t_on...原创 2017-09-06 15:44:39 · 5422 阅读 · 1 评论 -
MySQL导入csv文件
作为一个ETL开发工程师日常需要经常与数据打交道,就在昨天领导给了一批数据,为csv(150M * 3张)和xlsx(3M)格式。本来就是个简单的数据导入(毕竟数据导入做了不止一次)首先想到的就是使用LOAD DATA 命令导入,大量数据的导入LOAD DATA 效率比 insert 和可视化工具导入 要快很多,没想到这几个文件花费了我将近一天的时间。。。首先介绍下LOAD DATA 的命令:原创 2017-10-27 15:04:03 · 4617 阅读 · 0 评论 -
txt文件导入mysql
LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name' [REPLACE | IGNORE] INTO TABLE tbl_name [CHARACTER SET charset_name] [{FIELDS | COLUMNS} [TERMINATED BY 'string'转载 2017-10-11 17:31:09 · 253 阅读 · 0 评论 -
将 mysql 查询结果输出到文件
直接用 mysql 命令[plain] view plain copy# 连接本地数据库,用户名为 gino 密码为 123456 指定所连接的数据库为 mysql gino@gino-exploit:~$ mysql -h localhost -ugino -p123456 -D mysql # select 语句的结果转载 2017-12-01 17:55:26 · 4270 阅读 · 0 评论 -
MySQL出现Waiting for table metadata lock的原因以及解决方法
转自:http://ctripmysqldba.iteye.com/blog/1938150 (有修改)MySQL在进行alter table等DDL操作时,有时会出现Waiting for table metadata lock的等待场景。而且,一旦alter table TableA的操作停滞在Waiting for table metadata lock的状态,后续对TableA的任转载 2017-11-22 18:16:41 · 2508 阅读 · 0 评论 -
MySQL使用正则表达式
以前我要查找数据都是使用like后来发现mysql中也有正则表达式了并且感觉性能要好于like,下面我来给大家分享一下mysql REGEXP正则表达式使用详解,希望此方法对大家有帮助。一、正则与LIKE的区别 Mysql的正则表达式仅仅使SQL语言的一个子集,可以匹配基本的字符、字符串。正则表达式描述了一组字符串。最简单的正则表达式是不含任何特殊字符的正则表达式。原创 2017-12-26 17:18:46 · 12043 阅读 · 0 评论 -
MySQL的lock tables和unlock tables的用法(转载)
早就听说lock tables和unlock tables这两个命令,从字面也大体知道,前者的作用是锁定表,后者的作用是解除锁定。但是具体如何用,怎么用,不太清楚。今天详细研究了下,总算搞明白了2者的用法。lock tables 命令是为当前线程锁定表.这里有2种类型的锁定,一种是读锁定,用命令 lock tables tablename read;另外一种是写锁定,用命令lock tables ...转载 2018-03-09 11:45:13 · 5397 阅读 · 1 评论 -
Mysql----查看数据库,表占用磁盘大小
查询所有数据库占用磁盘空间大小select TABLE_SCHEMA, concat(truncate(sum(data_length)/1024/1024,2),' MB') as data_size,concat(truncate(sum(index_length)/1024/1024,2),'MB') as index_sizefrom information_schema.tabl...转载 2018-03-15 18:51:18 · 1095 阅读 · 0 评论 -
MySQL比like语句更高效的写法
LIKE语句SELECT `column` FROM `table` where `condition` like `%keyword%'事实上,可以使用 locate(position) 和 instr 这两个函数来代替一、LOCATE语句SELECT `column` from `table` where locate(‘keyword’, `condition`)>0二、或是 loca...转载 2018-03-05 18:26:26 · 810 阅读 · 0 评论 -
mysqldump导出不包含存储过程
mysqldump导出不包含存储过程mysqldump -u 数据库用户名 -p -n -t -d -R --triggers=false 数据库名 > 文件名 这样单独把存储过程和函数导出 然后导入之前 进mysql 设置下set global log_bin_trust_function_creators=TRUE; 否则报错 ERROR 1418 (HY...转载 2018-12-11 14:36:10 · 1716 阅读 · 0 评论