-
MySQL 5.5 INSERT ON DUPLICATE KEY UPDATE语句解说
所属栏目:[MySql教程] 日期:2022-04-13 热度:185
执行INSERT ... ON DUPLICATE KEY UPDATE语句,如果INSERT的语句插入的值和已有的UNIQUE索引或主键重复的话,MySQL会更新已存在的行。 测试没有主键和UNIQUE索引的表 mysql select * from dept2; +--------+-------------+-------------+ | deptno | dname |[详细]
-
innodb next-key lock引发的死锁现象解析
所属栏目:[MySql教程] 日期:2022-04-13 热度:103
这个例子是我在网上看到的,我分析了很久才弄明白锁产生的具体过程。 数据库的事务隔离级别是RR。 建测试表: CREATE TABLE `LockTest` ( `order_id` varchar(20) NOT NULL, `id` bigint(20) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`id`), KEY `idx_order_i[详细]
-
Linux下mysql忘记管理员密码的处理方法
所属栏目:[MySql教程] 日期:2022-04-13 热度:53
当你的mysql管理员密码忘记了,怎么办? 来看看下面 在开启mysql服务的适时候,使用--skip-grant-tables 参数跳过权限检查启动mysql [root@potato Desktop]# mysqld_safe --skip-grant-tables 161209 00:01:29 mysqld_safe Logging to /data/mysql/mytest_33[详细]
-
MySQL之优化
所属栏目:[MySql教程] 日期:2022-04-13 热度:188
MySQL的优化 : 一、我们可以且应该优化什么? 硬件 操作系统/软件库 SQL服务器(设置和查询) 应用编程接口(api) 应用程序 ------------------------------------------------------------ 二、优化硬件 如果你需要庞大的数据库表(2G),你应该考虑使用64位的硬[详细]
-
CentOS 6.3 安置MySQL-5.7.10
所属栏目:[MySql教程] 日期:2022-04-13 热度:107
MySQL的安装分为三种: 1、RPM包安装; 2、二进制包安装; 3、源码安装。 第一种方式比较简单,直接RPM包安装就OK了,或者通过yum源来安装,但无法自定义安装目录。 而第三种方式比较复杂。 一般项目中使用比较多的是通过二进制包来安装,这种安装方式可以根[详细]
-
MySQL数据库初体会
所属栏目:[MySql教程] 日期:2022-04-13 热度:144
MySQL数据库初体验 Ram:随机性访问存储器,断电丢失数据 内存 Rom:只读访问存储器,不会丢失数据 管理存储的数据,数据的增删改查,数据的迁移,保证数据的私密性 1.数据库的基本概念 2.数据库的发展 3.主流的数据库介绍 4.编译安装mysql 5.操作mysql 数据[详细]
-
MySQL Drop Table删除表
所属栏目:[MySql教程] 日期:2022-04-12 热度:139
删除现有MySQL表这是很容易的,但必须非常小心,当删除任何现有的表,删除表后丢失的数据将不能恢复。 语法 这是用来删除MySQL表的通用SQL语法: DROP TABLE table_name ; 1、从命令行提示符删除表 这需要只是在 MySQL提示符下执行DROP TABLE SQL命令。 示例[详细]
-
MySQL Insert插入数据
所属栏目:[MySql教程] 日期:2022-04-12 热度:113
想要将数据插入到MySQL表,需要使用SQL INSERT INTO命令。 可以通过用mysql提示符或通过使用像PHP脚本将任何数据插入到MySQL表。 语法 这里是INSERT INTO命令将数据插入到MySQL表的通用SQL语法: INSERT INTO table_name ( field1, field2,...fieldN ) VALUE[详细]
-
MySQL Select查询
所属栏目:[MySql教程] 日期:2022-04-12 热度:156
SQL SELECT命令用于从MySQL数据库获取数据。可以在MySQL提示符使用这个命令,以及任何像PHP的脚本和语言等。 语法 下面是通用的SQL的SELECT命令语法,从MySQL表获取数据: SELECT field1, field2,...fieldN table_name1, table_name2... [WHERE Clause] [OFF[详细]
-
MySQL Update查询
所属栏目:[MySql教程] 日期:2022-04-12 热度:121
可能会有一个需要,要在一个MySQL表中的现有数据进行修改。可以通过使用SQL UPDATE命令来执行。可以修改任何MySQL表中任何字段的值。 语法 这里是UPDATE命令修改数据到MySQL表的通用SQL语法: UPDATE table_name SET field1=new-value1, field2=new-value2 [[详细]
-
MySQL Delete查询
所属栏目:[MySql教程] 日期:2022-04-12 热度:86
如果想从任何MySQL表中删除纪录,那么可以使用SQL命令:DELETE FROM. 可以使用这个命令在MySQL提示符,以及PHP等脚本的语言。 语法 这里是DELETE命令从一个MySQL表中删除数据的通用的SQL语法: DELETE FROM table_name [WHERE Clause] 如果WHERE子句没有指定[详细]
-
MySQL Like子句
所属栏目:[MySql教程] 日期:2022-04-12 热度:185
我们已经看到使用SQL SELECT命令从MySQL表中获取数据。也可以使用WHERE子句来选择所需的记录条件子句。 WHERE等于子句号(=)用来精确匹配工作,如类似 tutorial_author=yiibai。 但也有可能,我们要求过滤掉所有的结果,tutorial_author应包含的名称:jay。这[详细]
-
MySQL Order By排序结果
所属栏目:[MySql教程] 日期:2022-04-12 热度:97
我们已经看到使用SQL SELECT命令从MySQL表中获取数据。当选择数据行,MySQL服务器可以自由地返回它们的顺序,除非有指示它按照怎样的结果进行排序。但是排序结果可以通过增加一个ORDER BY子句设定列名称或要排序的列。 语法 这是使用ORDER BY子句从MySQL表数[详细]
-
MySQL Join联接
所属栏目:[MySql教程] 日期:2022-04-12 热度:161
到目前为止,我们只是从一个表读取数据。这是相对简单的,但在大多数现实中的MySQL使用,需要从多个表中,在单个查询获得数据。 可以在单个SQL查询中使用多个表。连接MySQL中的行在两个或多个表到一个表。 可以使用Join在SELECT,UPDATE和DELETE语句加入MySQ[详细]
-
MySQL NULL值
所属栏目:[MySql教程] 日期:2022-04-12 热度:102
我们已经看到SQL SELECT命令和WHERE子句一起使用,来从MySQL表中提取数据,但是,当我们试图给出一个条件,比较字段或列值设置为NULL,它确不能正常工作。 为了处理这种情况,MySQL提供了三大运算符 IS NULL: 如果列的值为NULL,运算结果返回 true IS NOT NU[详细]
-
mysql 半等步复制
所属栏目:[MySql教程] 日期:2022-04-12 热度:147
mysql 半同步复制: 一.半同步复制 半同步复制特点 1. 与传统的异步复制相比,半同步复制在多个Slave节点中会选取一个节点进行半同步复制。也就是说,当Master提交一个事务的时候,在这个半同步复制的Slave端返回一个同步完成的Ack包之后,服务器才会向用户[详细]
-
mysql系列的 mmm高可用集群
所属栏目:[MySql教程] 日期:2022-04-12 热度:101
mmm高可用集群介绍: 高可用集群介绍:主备模式,当主不能提供服务的时候备用主机接替它提供服务。 这个过程对于客户端是透明的。 一、前期准备工作 1、准备五台linux服务器:主(192.168.4.122),主备(192.168.4.123) 从(192.168.4.126),从(192.168.[详细]
-
mysql select之后的子查询
所属栏目:[MySql教程] 日期:2022-04-12 热度:101
select后面的子查询使用,只能是标量查询 #案例:查询每个部门的员工个数 SELECT d.*,( SELECT COUNT(*) FROM employees WHERE employees.`department_id`=d.department_id ) FROM departments d; #案例:查询员工号=102的部门名 SELECT department_name FROM[详细]
-
MySQL Batched Key Access BKA 原理和设定使用办法举例
所属栏目:[MySql教程] 日期:2022-04-12 热度:180
MySQL 5.6版本开始增加了提高表join性能的算法:Batched Key Access (BKA)的新特性。 BKA算法原理:将外层循环的行/结果集存入join buffer,内存循环的每一行数据与整个buffer中的记录做比较, 可以减少内层循环的扫描次数. 对于多表join语句,当MySQL使用索[详细]
-
MySQL 存储过程空结果集错误Error 1329 No data 的异常处置
所属栏目:[MySql教程] 日期:2022-04-12 热度:58
在MySQL的存储过程中,当查询到空结果集时会产生下面报错 Error 1329 No data - zero rows fetched, selected, or processed 解决方法: 在存储过程中,添加异常处理 注意代码中的橙色部分的异常代码 delimiter $$ CREATE PROCEDURE PROC_ADDSubscribers_dif[详细]
-
实例解读 MySQL并行复制如何解决特定的主从难题?
所属栏目:[MySql教程] 日期:2022-04-12 热度:99
并行复制存世已多年,但是在实际应用场景中的使用并不常见。这次很幸运,我们刚好遇到一个客户,主的写入工作量非常大,但是从难以跟上,在这种情况下,我建议它使用并行从属线程。 那么,如何衡量并行复制是否在客户的场景中发挥了作用?对于客户业务能够带[详细]
-
SQL存储过程中运用BEGIN TRY捕捉错误并保存
所属栏目:[MySql教程] 日期:2022-04-12 热度:73
SQL存储过程中使用BEGIN TRY捕捉错误并保存: 1、创建保存错误的数据表: /*创建错误日志表*/ CREATE TABLE ErrorLog( errNum INT, ErrSev NVARCHAR(500), ErrState INT, ErrProc NVARCHAR(1000), ErrLine INT, ErrMsg NVARCHAR(2000) ) 2、创建保存错误信息[详细]
-
MySQL 5.7创建多源复制
所属栏目:[MySql教程] 日期:2022-04-12 热度:181
MySQL 5.7版本支持多源复制,MySQL 5.5和5.6不支持。 多源复制可以让多个主节点同时并行进行复制到一个从节点上。一个slave为每个master创建一个复制通道。 至少需要两台主库和一台从库。 多源复制中的主库,可以配置成基于全局事务标准(GTID)的复制,或者基[详细]
-
MySQL innodb引擎的事务执行步骤
所属栏目:[MySql教程] 日期:2022-04-12 热度:191
通过这篇文章可以了解到下面几个问题 问题1:MySQL innodb引擎的update的流程; 问题2:以及写redo,undo,binlog的顺序,然后刷盘的顺序又是什么呢? 问题3:以及刷新redo和脏数据的相关进程; 总结以上的三个问题,其实就是关于MySQL innodb事务的流程;那么[详细]
-
为什么说sap软件对ic设计企业关键呢?
所属栏目:[MySql教程] 日期:2022-04-12 热度:59
我们先来看下一下IC设计行业背景说明,IC设计业已成为半导体产业链中的明日之星,尤其在景气低迷之际,IC设计业的发展倍受瞩目,由于IC设计的脑力密集型特性,加上越来越多的IDM厂商也跨入Fabless模式,因此在整个半导体产业链中,在IC市场多变的情况下,有[详细]