![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MySQL
文章平均质量分 98
OH,CGWLMXUP
这个作者很懒,什么都没留下…
展开
-
MySQL源码分析-启动初始化&连接与线程管理
目录0. 背景1. MySQL初始化初始化的内容MySQL中的线程全量源码源码函数调用链0. 背景参加公司早读会分享,打算1.MySQL初始化源码学习个人习惯从最开始的各种准备初始化展开深入,mysql也一样,我们从mysql的启动初始化一直到终止阶段分析逻辑。一下是mysql初始化的简单小结,详细的源码栈在后续接着分析。1.1 初始化的内容参数配置解析: 分别从/etc/my.conf, /etc/mysql/my.conf, SYSCONFD..原创 2020-11-11 11:09:10 · 1221 阅读 · 1 评论 -
MySQL源码分析--一条简单SQL的加锁分析
一、问题引入看如下一条sql语句:#tableT(idint,namevarchar(20)) deletefromTwhereid=10;MySQL在执行的过程中,是如何加锁呢?再看下面这条语句:select*fromTwhereid=10;那这条语句呢?其实这其中包含太多知识点了。要回答这两个问题,首先需要了解一些知识。二、相关知识回顾2.1 多版本并发控制在MySQL默认存储引擎InnoDB中,实现的是基...原创 2020-09-14 23:09:54 · 719 阅读 · 0 评论 -
MySQL学习之路 ------ 连接JOIN
MySQL 连接的使用在前几章节中,我们已经学会了如何在一张表中读取数据,这是相对简单的,但是在真正的应用中经常需要从多个数据表中读取数据。本章节我们将向大家介绍如何使用 MySQL 的 JOIN 在两个或多个表中查询数据。你可以在 SELECT, UPDATE 和 DELETE 语句中使用 Mysql 的 JOIN 来联合多表查询。JOIN 按照功能大致分为如下三类:INNE...原创 2019-09-17 11:12:51 · 98 阅读 · 0 评论 -
MySQL学习之路 ------ 正则表达式和事务
MySQL 正则表达式在前面的章节我们已经了解到MySQL可以通过LIKE ...%来进行模糊匹配。MySQL 同样也支持其他正则表达式的匹配, MySQL中使用 REGEXP 操作符来进行正则表达式匹配。如果您了解PHP或Perl,那么操作起来就非常简单,因为MySQL的正则表达式匹配与这些脚本的类似。下表中的正则模式可应用于 REGEXP 操作符中。模式 描述 ...原创 2019-09-17 16:45:16 · 98 阅读 · 0 评论 -
MySQL学习之路 ------ 索引
MySQL 索引MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度。打个比方,如果合理的设计且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的MySQL就是一个人力三轮车。拿汉语字典的目录页(索引)打比方,我们可以按拼音、笔画、偏旁部首等排序的目录(索引)快速查找到需要的字。索引分单列索引和组合索引。单列索引,即一个索引只包...原创 2019-09-23 14:11:17 · 73 阅读 · 0 评论 -
MySQL学习之路 ------ 复制表
MySQL 复制表如果我们需要完全的复制MySQL的数据表,包括表的结构,索引,默认值等。 如果仅仅使用CREATE TABLE ... SELECT命令,是无法实现的。本章节将为大家介绍如何完整的复制MySQL数据表,步骤如下:使用SHOW CREATE TABLE命令获取创建数据表(CREATE TABLE) 语句,该语句包含了原数据表的结构,索引等。 复制以下命令显...原创 2019-09-23 16:17:54 · 70 阅读 · 0 评论 -
MySQL学习之路 ------ 重复数据处理
MySQL 处理重复数据有些 MySQL 数据表中可能存在重复的记录,有些情况我们允许重复数据的存在,但有时候我们也需要删除这些重复的数据。本章节我们将为大家介绍如何防止数据表出现重复数据及如何删除数据表中的重复数据。防止表中出现重复数据你可以在 MySQL 数据表中设置指定的字段为PRIMARY KEY(主键)或者UNIQUE(唯一)索引来保证数据的唯一性。让我...原创 2019-09-23 16:38:29 · 236 阅读 · 0 评论 -
MySQL学习之路 ------ SQL 注入
MySQL 及 SQL 注入如果您通过网页获取用户输入的数据并将其插入一个MySQL数据库,那么就有可能发生SQL注入安全的问题。本章节将为大家介绍如何防止SQL注入,并通过脚本来过滤SQL中注入的字符。所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。我们永远不要信任用户的输入,我们必须认定用户输入的...原创 2019-09-23 18:57:53 · 108 阅读 · 0 评论 -
MySQL学习之路 ------ 内置函数
MySQL 函数MySQL 有很多内置的函数,以下列出了这些函数的说明。MySQL 字符串函数函数 描述 实例 ASCII(s) 返回字符串 s 的第一个字符的 ASCII 码。 返回 CustomerName 字段第一个字母的 ASCII 码: SELECT ASCII(CustomerName) AS NumCodeOfFirstCha...原创 2019-09-23 19:57:25 · 94 阅读 · 0 评论 -
MySQL学习之路 ------ 运算符
MySQL 运算符本章节我们主要介绍 MySQL 的运算符及运算符的优先级。 MySQL 主要有以下几种运算符:算术运算符 比较运算符 逻辑运算符 位运算符算术运算符MySQL 支持的算术运算符包括:运算符 作用 + 加法 - 减法 * 乘法 / 或 DIV 除法 % 或 MOD 取余 在除法运算和模运算中,如果除...原创 2019-09-23 19:58:23 · 93 阅读 · 0 评论 -
MySQL学习之路 ------ ORDER BY排序和GROUP BY分组
MySQL 排序我们知道从 MySQL 表中使用 SQL SELECT 语句来读取数据。如果我们需要对读取的数据进行排序,我们就可以使用 MySQL 的ORDER BY子句来设定你想按哪个字段哪种方式来进行排序,再返回搜索结果。语法以下是 SQL SELECT 语句使用 ORDER BY 子句将查询数据排序后再返回数据:SELECT field1, field2,...f...原创 2019-09-17 11:07:44 · 345 阅读 · 0 评论 -
MySQL学习之路 ------ UNION
MySQL UNION 操作符本教程为大家介绍 MySQL UNION 操作符的语法和实例。描述MySQL UNION 操作符用于连接两个以上的 SELECT 语句的结果组合到一个结果集合中。多个 SELECT 语句会删除重复的数据。语法MySQL UNION 操作符语法格式:SELECT expression1, expression2, ... expression_...原创 2019-09-17 11:04:16 · 88 阅读 · 0 评论 -
MySQL学习之路 ------ link
MySQL LIKE 子句我们知道在 MySQL 中使用 SQL SELECT 命令来读取数据, 同时我们可以在 SELECT 语句中使用 WHERE 子句来获取指定的记录。WHERE 子句中可以使用等号=来设定获取数据的条件,如 "runoob_author = 'RUNOOB.COM'"。但是有时候我们需要获取 runoob_author 字段含有 "COM" 字符的所有记录,...转载 2019-09-17 10:55:56 · 364 阅读 · 0 评论 -
MySQL学习之路 ------ 启动、关闭与相关设置
启动及关闭 MySQL 服务器Windows 系统下在 Windows 系统下,打开命令窗口(cmd),进入 MySQL 安装目录的 bin 目录。启动:cd c:/mysql/binmysqld --console连接本地mysql:mysql -u root -p连接到远程主机上的mysql:假设远程主机的IP为:110.110.110.110,用户名为root,密...原创 2019-09-16 14:14:05 · 120 阅读 · 0 评论 -
MySQL学习之路 ------ 数据库连接
使用mysql二进制方式连接您可以使用MySQL二进制方式进入到mysql命令提示符下来连接MySQL数据库。实例以下是从命令行中连接mysql服务器的简单实例:[root@host]# mysql -u root -pEnter password:******在登录成功后会出现 mysql> 命令提示窗口,你可以在上面执行任何 SQL 语句。以上命令执行后,登录...原创 2019-09-16 14:23:04 · 424 阅读 · 0 评论 -
MySQL学习之路 ------ 创建数据库
MySQL 创建数据库我们可以在登陆 MySQL 服务后,使用create命令创建数据库,语法如下:CREATE DATABASE 数据库名;以下命令简单的演示了创建数据库的过程,数据名为 RUNOOB:[root@host]# mysql -u root -p Enter password:****** # 登录后进入终端mysql> create DA...原创 2019-09-16 14:26:01 · 164 阅读 · 0 评论 -
MySQL学习之路 ------ 显示、删除数据库
显示数据库命令:show databases (注意:最后有个s)mysql> show databases;注意:为了不再显示的时候乱码,要修改数据库默认编码。以下以GBK编码页面为例进行说明:1、修改MYSQL的配置文件:my.ini里面修改default-character-set=gbk2、代码运行时修改: ①Java代码:jdbc:mysql://localhost:...原创 2019-09-16 14:27:55 · 176 阅读 · 0 评论 -
MySQL学习之路 ------ 选择数据库
命令:mysql> select database();MySQL中SELECT命令类似于其他编程语言里的print或者write,你可以用它来显示一个字符串、数字、数学表达式的结果等等。如何使用MySQL中SELECT命令的特殊功能?1.显示MYSQL的版本mysql> select version();+-----------------------+| version...原创 2019-09-16 14:31:07 · 75 阅读 · 0 评论 -
MySQL学习之路 ------ 数据库数据类型
MySQL 数据类型MySQL中定义数据字段的类型对你数据库的优化是非常重要的。MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。数值类型MySQL支持所有标准SQL数值数据类型。这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISI...原创 2019-09-16 14:48:50 · 180 阅读 · 1 评论 -
MySQL学习之路 ------ 创建数据库表
MySQL 创建数据表创建MySQL数据表需要以下信息:表名 表字段名 定义每个表字段语法以下为创建MySQL数据表的SQL通用语法:CREATE TABLE table_name (column_name column_type); 命令:create table <表名> ( <字段名1> <类型1> [,..<字段名n...原创 2019-09-16 17:10:58 · 283 阅读 · 0 评论 -
MySQL学习之路 ------ 数据库表的增删改查
MySQL 删除数据表MySQL中删除数据表是非常容易操作的, 但是你再进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失。语法以下为删除MySQL数据表的通用语法:DROP TABLE table_name ;DROP TABLE用于取消一个或多个表。您必须有每个表的DROP权限。所有的表数据和表定义会被取消,所以使用本语句要小心!注意:对于一个带分区的表,D...原创 2019-09-16 17:16:46 · 120 阅读 · 0 评论 -
MySQL学习之路 ------ WHERE子句
MySQL WHERE 子句我们知道从 MySQL 表中使用 SQL SELECT 语句来读取数据。如需有条件地从表中选取数据,可将 WHERE 子句添加到 SELECT 语句中。语法以下是 SQL SELECT 语句使用 WHERE 子句从数据表中读取数据的通用语法:SELECT field1, field2,...fieldN FROM table_name1, tabl...原创 2019-09-16 17:22:39 · 116 阅读 · 0 评论 -
MySQL学习之路 ------ 数据的增删改查、表明修改
表插入数据命令:insert into <表名> [( <字段名1>[,..<字段名n > ])] values ( 值1 )[, ( 值n )]例如:往表 MyClass中插入二条记录, 这二条记录表示:编号为1的名为Tom的成绩为96.45, 编号为2 的名为Joan 的成绩为82.99, 编号为3 的名为Wang 的成绩为96.5。 mysql...原创 2019-09-16 17:27:59 · 171 阅读 · 0 评论 -
MySQL学习之路 ------ 数据库简介
RDBMS 即关系数据库管理系统(Relational Database Management System)。RDBMS 术语在我们开始学习MySQL 数据库前,让我们先了解下RDBMS的一些术语:数据库:数据库是一些关联表的集合。 数据表:表是数据的矩阵。在一个数据库中的表看起来像一个简单的电子表格。 列:一列(数据元素) 包含了相同类型的数据, 例如邮政编码的数据。 ...原创 2019-09-12 11:38:42 · 219 阅读 · 0 评论