前言:操作系统是WIn7 64位 旗舰版   ,Mysql的版本是mysql-5.7.10-winx64 是社区版 就是所谓的最后的免费版本. 下载后 解压 然后配置my.ini文件. ×××××××××××××××××××××××××××××××××××××××××××××××××× # For advice on how to change settings please see# http://dev.mysql.com/doc/refman/5.7/en/server-configura…
2015/06/18 16:23更新,由于QQ邮件的图片链接失效了,请在云笔记链接查看 http://note.youdao.com/share/?id=f0b2ed30a3fc8e57c381e3d2ef9cd68e&type=note 以前曾经学习过SQL server 2003.那是09年的时候,最近这几天比较闲,遂学习Mysql的相关知识,以下是一些学习截屏,曾经学习过的知识,忽然间又从脑海中闪现了.大部分都是差不多的.                 .   Mysql执行流程    …
MYSQL删除表的记录后如何使ID从1开始 MYSQL删除表的记录后如何使ID从1开始 http://hi.baidu.com/289766516/blog/item/a3f85500556e2c09728da5e1.html 2009-11-30 14:24 方法1:truncate table 你的表名//这样不但将数据全部删除,而且重新定位自增的字段方法2:delete from 你的表名dbcc checkident(你的表名,reseed,0) //重新定位自增的字段,让它从1开始方法…
一.使用Logstash使用jdbc从MySQL读取数据操作 1.1 安装jdbc插件 jdbc默认已安装,如果没安装使用logstash-plugin安装即可(logstash-plugin在logstash的bin目录下): logstash-plugin install logstash-input-jdbc 1.2 下载mysql jdbc驱动 mysql最新版是8.0,但使用时报错,这里仍以5.1版本演示 wget https://cdn.mysql.com//Downloads/Co…
基础知识 Innodb存储引擎 支持行锁 支持事务: Myisam存储引擎 只支持表锁: 不支持事务: 常见索引列表 独立的列 前缀索引(索引选择性) 多列索引(并不是多个单列索引,索引顺序很重要) 聚簇索引(保存了完整的数据记录,数据文件本身就是索引文件) 覆盖索引(一个索引包含或覆盖所有查询的字段值,对于Innodb来说,可以避免对主键索引的二次查询) 使用索引扫描做排序 冗余索引和重复索引 索引对CRUD的影响 一般来说,增加索引是为了提升查询速度,索引越多,查询速度应该越快(当索引太多时…
一.清除mysql表中数据 delete from 表名;truncate table 表名;不带where参数的delete语句可以删除mysql表中所有内容,使用truncate table也可以清空mysql表中所有内容.效率上truncate比delete快,但truncate删除后不记录mysql日志,不可以恢复数据.delete的效果有点像将mysql表中所有记录一条一条删除到删完,而truncate相当于保留mysql表的结构,重新创建了这个表,所有的状态都相当于新表. 二.删除表…
原文链接:http://www.qqdeveloper.com/detail/11/1.html 为什么要记录sql记录 主要目的是为了检测我们的网站安全问题,有效的避免一些sql注入或者是xss攻击. 如何实现 这里主要以windows系统中的my.ini文件为例,Linux系统的配置文件是my.conf,本例中以5.6为例. ​方式一 ​    ​log = "D:/wamp64/logs/mysql.log" // 日子记录文件 ​    ​log_slow_queries =…
mysql防止重复插入记录方法总结 防止mysql重复插入记录的方法有很多种,常用的是ignore,Replace,ON DUPLICATE KEY UPDATE,当然我们也可以在php中加以判断了.   方案一:使用ignore关键字 如果是用主键primary或者唯一索引unique区分了记录的唯一性,避免重复插入记录可以使用: 代码如下:  代码如下 复制代码  INSERT IGNORE INTO `table_name` (`email`, `phone`, `user_id`) VA…
/*************************************************************************** * navicat MySQL 只有1000条记录 * 说明: * 早上跑来了,查看一下数据库中数据情况,结果navicat只能看到1000条记录, * 查看mysql数据库结果是有全部的数据,原因是navicat只能显示1000条记录. * * 2016-10-29 深圳 南山平山村 曾剑锋 *************************…
如果ID是主键或者有索引,可以直接查找: 方法一: 查询上一条记录的SQL语句(如果有其他的查询条件记得加上other_conditions以免出现不必要的错误): select * from table_a where id = (select id from table_a where id < {$id} [and other_conditions] order by id desc limit 1) [and other_conditions]; 查询下一条记录的SQL语句(如果有其他的…
表结构如下: mysql> desc test1; +--------------+------------------+------+-----+---------+----------------+ | Field        | Type             | Null | Key | Default | Extra          | +--------------+------------------+------+-----+---------+--------------…
MySQL Limit 限定查询记录数 MySQL LIMIT MySQL 中 LIMIT 关键字用于限定查询记录返回最大数目. 语法: ... LIMIT offset , rows 该语法中,offset表示偏移量(指向数据记录的游标),rows表示查询限定返回的最大记录数,这两个参数必须为整数. 例子: SELECT username FROM user LIMIT 4,10 如果 user 表中的数据记录超过14条的话,该例子将会返回符合结果的第 5-14 条记录(共 10 条),注意默…
MySQL单表最大记录数不能超过多少? 很多人困惑这个问题.其实,MySQL本身并没有对单表最大记录数进行限制,这个数值取决于你的操作系统对单个文件的限制本身. 从性能角度来讲,MySQL单表数据不要超过多少呢?业界流传是500万行.超过500万行就要考虑分表分库了. 笔者以为,其实不然. 曾经在中国互联网技术圈广为流传着这么一个说法:MySQL 单表数据量大于 2000 万行,性能会明显下降.事实上,这个传闻据说最早起源于百度.具体情况大概是这样的,当年的 DBA 测试 MySQL性能时发现,…
docker MySQL官方版本使用记录 使用记录 拉取官方镜像:docker pull mysql 运行镜像:docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:latest -p:将容器的3306端口映射到宿主机的3306端口 -e:设置mysql的root用户的密码为root 参考链接 mysql…
mysql使用问题记录 1.mysql如何修改root密码 a.进入mysql安装目录b.登录 mysql -u root -pc.修改密码 mysql> SET PASSWORD FOR root@"%" = PASSWORD('abcd/1234'); 2.mysql的root账户密码正确,本地连接却报错1045 Access denied for user 'root'@'localhost' (using password:YES) 解决方法:update user se…
如果我们创建了(area, age,salary)的复合索引,那么其实相当于创建了:(area,age,salary),(area,age).(area)三个索引,这被称为最佳左前缀特性.因此我们在创建复合索引时应该将最常用作限制条件的列放在最左边,依次递减.例:select * from test where area='11' select * from test where area='11' and age=1 select * from test where area='11' and…
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 说明本篇文章部分转载自互联网. MySQL的Replication(英文为复制)是一个多MySQL数据库做主从同步的方案,特点是异步复制,广泛用在各种对MySQL有更高性能.更高可靠性要求的场合.与之对应的是另一个同步技术是MySQL Cluster,但因为MySQL Cluster配置比较复杂,所以使用者较少. MySQL的Replication是一个异步复制的过程(mysql5.1.7以上版本分为异步复制和半同步两种模式),它是从一个Mysql…
具体实例 22.MySQL ALTER命令 当我们需要修改数据表名或者修改数据表字段时,就需要使用到MySQL ALTER命令. 1.如果需要修改数据表的名称,可以在 ALTER TABLE 语句中使用 RENAME 子句来实现.以下实例将数据表 old_tablename 重命名为 new_tablename: mysql> ALTER TABLE old_tablename RENAME TO new_tablename; 2.删除,添加或修改表字段,如下命令使用了 ALTER 命令及 DR…
随笔:小编由于年前一直在找工作,而年后找到工作后又一直在忙工作,所以也很少有时间给大家写点什么,总的来说呢,回顾一下之前面试的几次经历,也曾小小的总结了一下自己的不足,发现自己虽然一直在原有的公司(外包)拼死拼活,也陆续的学了一大堆东西,心里呢原以为自己也算是小有所成吧,可是随着那几次面试,还是逐渐的发现了一些自己的不足,就比如SQL这快.可能大概是之前一直使用Spring Data JPA的关系加上平时也没有怎么特意锻炼的缘故吧,发现自己虽说每天都在和数据库打交道,却也没有怎么真正的好好专研一…
重新学习MySQL数据库10:MySQL里的那些日志们 同大多数关系型数据库一样,日志文件是MySQL数据库的重要组成部分.MySQL有几种不同的日志文件,通常包括错误日志文件,二进制日志,通用日志,慢查询日志,等等.这些日志可以帮助我们定位mysqld内部发生的事件,数据库性能故障,记录数据的变更历史,用户恢复数据库等等.本文主要描述错误日志文件. 1.MySQL日志文件系统的组成 a.错误日志:记录启动.运行或停止mysqld时出现的问题. b.通用日志:记录建立的客户端连接和执行的语句.…
重新学习MySQL数据库9:Innodb中的事务隔离级别和锁的关系 Innodb中的事务隔离级别和锁的关系 前言: 我们都知道事务的几种性质,数据库为了维护这些性质,尤其是一致性和隔离性,一般使用加锁这种方式.同时数据库又是个高并发的应用,同一时间会有大量的并发访问,如果加锁过度,会极大的降低并发处理能力.所以对于加锁的处理,可以说就是数据库对于事务处理的精髓所在.这里通过分析MySQL中InnoDB引擎的加锁机制,来抛砖引玉,让读者更好的理解,在事务处理中数据库到底做了什么. #一次封锁or两…
重新学习Mysql数据库3:Mysql存储引擎与数据存储原理 数据库的定义 很多开发者在最开始时其实都对数据库有一个比较模糊的认识,觉得数据库就是一堆数据的集合,但是实际却比这复杂的多,数据库领域中有两个词非常容易混淆,也就是数据库和实例: 数据库:物理操作文件系统或其他形式文件类型的集合: 实例:MySQL 数据库由后台线程以及一个共享内存区组成: 对于数据库和实例的定义都来自于 MySQL 技术内幕:InnoDB 存储引擎 一书,想要了解 InnoDB 存储引擎的读者可以阅读这本书籍. 数据…
重新学习Mysql数据库4:Mysql索引实现原理 MySQL索引类型 (https://www.cnblogs.com/luyucheng/p/6289714.html) 一.简介 MySQL目前主要有以下几种索引类型: 1.普通索引 2.唯一索引 3.主键索引 4.组合索引 5.全文索引 二.语句 CREATE TABLE table_name[col_name data type][unique|fulltext][index|key][index_name](col_name[lengt…
重新学习Mysql数据库1:无废话MySQL入门 开始使用 我下面所有的SQL语句是基于MySQL 5.6+运行. MySQL 为关系型数据库(Relational Database Management System),一个关系型数据库由一个或数个表格组成, 如图所示的一个表格: 表头(header): 每一列的名称; 列(col): 具有相同数据类型的数据的集合; 行(row): 每一行用来描述某个人/物的具体信息; 值(value): 行的具体信息, 每个值必须与该列的数据类型相同; 键(…
重新学习Mysql数据库2:『浅入浅出』MySQL 和 InnoDB 作为一名开发人员,在日常的工作中会难以避免地接触到数据库,无论是基于文件的 sqlite 还是工程上使用非常广泛的 MySQL.PostgreSQL,但是一直以来也没有对数据库有一个非常清晰并且成体系的认知,所以最近两个月的时间看了几本数据库相关的书籍并且阅读了 MySQL 的官方文档,希望对各位了解数据库的.不了解数据库的有所帮助. 本文中对于数据库的介绍以及研究都是在 MySQL 上进行的,如果涉及到了其他数据库的内容或者…
转载:http://mingxinglai.com/cn/2015/12/material-of-mysql/ 我这里推荐几本MySQL的好书,应该能够有效避免学习MySQL的弯路,并且达到一个不错的水平. 我这里推荐的书或材料分为两个部分,分别是MySQL的使用和MySQL的源码学习.在介绍的过程中,我会穿插简单的评语或感想. 1.MySQL的使用 1.1 MySQL技术内幕:InnoDB存储引擎 学习MySQL的使用,首推姜承尧的<MySQL技术内幕:InnoDB存储引擎>,当然不是因为姜…
1.如何快速掌握MySQL? ⑴培养兴趣兴趣是最好的老师,不论学习什么知识,兴趣都可以极大地提高学习效率.当然学习MySQL 5.6也不例外.⑵夯实基础计算机领域的技术非常强调基础,刚开始学习可能还认识不到这一点,随着技术应用的深 入,只有有着扎实的基础功底,才能在技术的道路上走得更快.更远.对于MySQL的学习来说, SQL语句是其中最为基础的部分,很多操作都是通过SQL语句来实现的.所以在学习的过程中, 读者要多编写SQL语句,对于同一个功能,使用不同的实现语句来完成,从而深刻理解其不同之处…
1.如何快速掌握MySQL? ⑴培养兴趣兴趣是最好的老师,不论学习什么知识,兴趣都可以极大地提高学习效率.当然学习MySQL 5.6也不例外.⑵夯实基础计算机领域的技术非常强调基础,刚开始学习可能还认识不到这一点,随着技术应用的深 入,只有有着扎实的基础功底,才能在技术的道路上走得更快.更远.对于MySQL的学习来说, SQL语句是其中最为基础的部分,很多操作都是通过SQL语句来实现的.所以在学习的过程中, 读者要多编写SQL语句,对于同一个功能,使用不同的实现语句来完成,从而深刻理解其不同之处…
MySQL的使用 1 MySQL技术内幕InnoDB存储引擎 2 MySQL的官方手册 3 MySQL排错指南 4 高性能MySQL 5 数据库索引设计与优化 6 Effective MySQL系列 MySQL的源码 21 InnoDB - A journey to the core 2 深入MySQL源码 3 深入理解MySQL核心技术 4 MySQL内核InnoDB存储引擎 5 MySQL Internals Manual 6 MariaDB原理与实现 后记 MySQL配套培训视频(姜承尧)…
本文转自互联网 本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial 喜欢的话麻烦点下Star哈 文章首发于我的个人博客: www.how2playlife.com 本文是微信公众号[Java技术江湖]的<重新学习MySQL数据库>其中一篇,本文部分内容来源于网络,为了把本文主题讲得清晰透彻,也整合了很多我认为不错的技术博客内容,引用其中了一些比较好的博客文章,如有…