-
MySQL Update查询
所属栏目:[MySql教程] 日期:2022-04-09 热度:63
可能会有一个需要,要在一个MySQL表中的现有数据进行修改。可以通过使用SQL UPDATE命令来执行。可以修改任何MySQL表中任何字段的值。 语法 这里是UPDATE命令修改数据到MySQL表的通用SQL语法: UPDATE table_name SET field1=new-value1, field2=new-value2[详细]
-
MySQL Delete查询
所属栏目:[MySql教程] 日期:2022-04-09 热度:161
如果想从任何MySQL表中删除纪录,那么可以使用SQL命令:DELETE FROM. 可以使用这个命令在MySQL提示符,以及PHP等脚本的语言。 语法 这里是DELETE命令从一个MySQL表中删除数据的通用的SQL语法: DELETE FROM table_name [WHERE Clause] 如果WHERE子句没有指[详细]
-
MySQL Like子句
所属栏目:[MySql教程] 日期:2022-04-09 热度:152
我们已经看到使用SQL SELECT命令从MySQL表中获取数据。也可以使用WHERE子句来选择所需的记录条件子句。 WHERE等于子句号(=)用来精确匹配工作,如类似 tutorial_author=yiibai。 但也有可能,我们要求过滤掉所有的结果,tutorial_author应包含的名称:jay。[详细]
-
MySQL Order By排序结果
所属栏目:[MySql教程] 日期:2022-04-09 热度:158
我们已经看到使用SQL SELECT命令从MySQL表中获取数据。当选择数据行,MySQL服务器可以自由地返回它们的顺序,除非有指示它按照怎样的结果进行排序。但是排序结果可以通过增加一个ORDER BY子句设定列名称或要排序的列。 语法 这是使用ORDER BY子句从MySQL表[详细]
-
MySQL Join联接
所属栏目:[MySql教程] 日期:2022-04-09 热度:51
到目前为止,我们只是从一个表读取数据。这是相对简单的,但在大多数现实中的MySQL使用,需要从多个表中,在单个查询获得数据。 可以在单个SQL查询中使用多个表。连接MySQL中的行在两个或多个表到一个表。 可以使用Join在SELECT,UPDATE和DELETE语句加入My[详细]
-
mysql 半等步复制
所属栏目:[MySql教程] 日期:2022-04-09 热度:98
mysql 半同步复制: 一.半同步复制 半同步复制特点 1. 与传统的异步复制相比,半同步复制在多个Slave节点中会选取一个节点进行半同步复制。也就是说,当Master提交一个事务的时候,在这个半同步复制的Slave端返回一个同步完成的Ack包之后,服务器才会向用[详细]
-
mysql系列的 mmm高可用集群
所属栏目:[MySql教程] 日期:2022-04-09 热度:79
mmm高可用集群介绍: 高可用集群介绍:主备模式,当主不能提供服务的时候备用主机接替它提供服务。 这个过程对于客户端是透明的。 一、前期准备工作 1、准备五台linux服务器:主(192.168.4.122),主备(192.168.4.123) 从(192.168.4.126),从(192.16[详细]
-
mysql select之后的子查询
所属栏目:[MySql教程] 日期:2022-04-09 热度:110
select后面的子查询使用,只能是标量查询 #案例:查询每个部门的员工个数 SELECT d.*,( SELECT COUNT(*) FROM employees WHERE employees.`department_id`=d.department_id ) FROM departments d; #案例:查询员工号=102的部门名 SELECT department_name FR[详细]
-
MySQL Batched Key Access BKA 原理和设定使用办法举例
所属栏目:[MySql教程] 日期:2022-04-09 热度:78
MySQL 5.6版本开始增加了提高表join性能的算法:Batched Key Access (BKA)的新特性。 BKA算法原理:将外层循环的行/结果集存入join buffer,内存循环的每一行数据与整个buffer中的记录做比较, 可以减少内层循环的扫描次数. 对于多表join语句,当MySQL使用[详细]
-
MySQL 存储过程空结果集错误Error 1329 No data 的异常处置
所属栏目:[MySql教程] 日期:2022-04-09 热度:81
在MySQL的存储过程中,当查询到空结果集时会产生下面报错 Error 1329 No data - zero rows fetched, selected, or processed 解决方法: 在存储过程中,添加异常处理 注意代码中的橙色部分的异常代码 delimiter $$ CREATE PROCEDURE PROC_ADDSubscribers_d[详细]
-
实例解读 MySQL并行复制如何解决特定的主从难题?
所属栏目:[MySql教程] 日期:2022-04-09 热度:191
并行复制存世已多年,但是在实际应用场景中的使用并不常见。这次很幸运,我们刚好遇到一个客户,主的写入工作量非常大,但是从难以跟上,在这种情况下,我建议它使用并行从属线程。 那么,如何衡量并行复制是否在客户的场景中发挥了作用?对于客户业务能够[详细]
-
mysql的执行策划解释
所属栏目:[MySql教程] 日期:2022-04-09 热度:114
关于MySQL的执行计划,做个笔记,可以做为优化的依据,尽量将第四列 type优化到ref,至少要保证range方式,能用覆盖索引的要使用覆盖索引,然后possible_keys显示null不代表不使用索引,覆盖索引的时候,可能只在key列显示,possible_keys显示null;然后注[详细]
-
xtrabackup自主全备份脚本
所属栏目:[MySql教程] 日期:2022-04-09 热度:75
xtrabackup自动全备份脚本,具有发送邮件和主从判断功能. ##set environment## . ~/.bash_profile BASEDIR=/data_bak SPACE_RATE=95 #space rate 95 SPACE_ROOM=10485760 #10GB WORKPATH=/data_bak/mysqlbackup/percona DATETIME=`date +%Y%m%d%H%M` INNOBA[详细]
-
MySQL 5.5 FLUSH TABLES WITH READ LOCK语句简介
所属栏目:[MySql教程] 日期:2022-04-09 热度:107
FLUSH TABLES WITH READ LOCK语句会关闭所有打开的表,并将所有数据库的表加上全局只读锁。 这对于备份来说十分方便。如果有像 Veritas 或 ZFS 这样的文件系统,你可以对备份打快照。 也可以直接拷贝要备份的表文件到备份目录 cp -r /data_dir/ /back_dir[详细]
-
JDB2致使磁盘io使用率高 导致mysql延迟过高
所属栏目:[MySql教程] 日期:2022-04-09 热度:73
背景:某项目slave数据库的延迟非常大 结合上iostat中 wsec/s 较大的数值,基本可以确定IO高负载的元凶是redo log的flush,而不是data page的flush 查看innodb log buffer状态 mysql show global status where variable_name in(Innodb_log_waits,Innodb_b[详细]
-
linux高负载下mysql数据库完全优化
所属栏目:[MySql教程] 日期:2022-04-09 热度:73
linux高负载下mysql数据库彻底优化(转)[@more@] 同时在线访问量继续增大 对于1G内存的服务器明显感觉到吃力严重时甚至每天都会死机 或者时不时的服务器卡一下 这个问题曾经困扰了我半个多月MySQL使用是很具伸缩性的算法,因此你通常能用很少的内存运行或给[详细]
-
MySQL--数据完全性
所属栏目:[MySql教程] 日期:2022-04-09 热度:155
- 数据类型 原则 尽量使用取值范围小的,节省存储空间 整数:int, bit 小数:decimal 表示浮点数 主键:primary key 物理上存储的顺序 非空:not null 唯一:unique 字段不允许重复 默认:default 不填写使用默认值,填写以填写为准 外键:foreign key 外[详细]
-
MySQL两阶段提交过程原理阐述
所属栏目:[MySql教程] 日期:2022-04-09 热度:136
MySQL使用两阶段提交主要解决 binlog 和 InnoDB redo log 的数据一致性的问题. 两阶段提交原理描述: 阶段1:InnoDB redo log 写盘,InnoDB 事务进入 prepare 状态 阶段2:如果前面prepare成功,binlog 写盘,那么再继续将事务日志持久化到binlog,如果持久[详细]
-
企业情况下MySQL5.5调优
所属栏目:[MySql教程] 日期:2022-04-09 热度:131
参照 腾讯云 和ucloud my.cnf 以及网上找的资料 整理出来的 my.cnf , 以后修改任何参数都会继续更新 也是在测试阶段 物理机 : ubuntu14.04 配置 8core 32G mysql : 5.5.62 调优配置 [client] port = 3306 socket = /var/run/mysqld/mysqld.sock default-[详细]
-
记住 永远不要在 MySQL 中运用 UTF-8
所属栏目:[MySql教程] 日期:2022-04-09 热度:181
最近我遇到了一个bug,我试着通过Rails在以utf8编码的MariaDB中保存一个UTF-8字符串,然后出现了一个离奇的错误: Incorrect string value:xF0x9Fx98x83 for column summary at row 1 我用的是UTF-8编码的客户端,服务器也是UTF-8编码的,数据库也是,[详细]
-
mysql主从拷贝原理
所属栏目:[MySql教程] 日期:2022-04-09 热度:78
环境: 3306 主库 3307 从库 1 设置server-id值并开启binlog功能参数 编辑mysql的配置文件/data/3306/my.cnf [mysqld] server-id = 6 ----用于同步的每台机器或实例sever-id都不能相同 log_bin =/data/3306/mysql-bin ----可以省略 重启服务 /data/3306/my[详细]
-
MySQL数据类别DECIMAL用法
所属栏目:[MySql教程] 日期:2022-04-09 热度:159
当我们需要存储小数,并且有精度要求,比如存储金额时,通常会考虑使用DECIMAL字段类型,可能大部分同学只是对DECIMAL类型略有了解,其中的细节还不甚清楚,本篇文章将从零开始,为你讲述DECIMAL字段类型的使用场景及方法。 1.DECIMAL类型简介 DECIMAL从My[详细]
-
MySQL索引性能测验
所属栏目:[MySql教程] 日期:2022-04-09 热度:124
很长一段时间没学习MySQL了,一直致力于oracle的研究,最近得空了就再拾起MySQL看看吧,记得去年发布过的2篇MySQL文章: 今天我们就来看看mysql中索引的性能测试: 1 准备环境 1.1 在数据库中创建测试表test1 [root@rhel6_lhr ~]# mysql -p Enter password[详细]
-
mytop安置,使用mytop监控MySQL性能
所属栏目:[MySql教程] 日期:2022-04-09 热度:158
mytop 是一个类似 Linux 下的 top 命令风格的 MySQL 监控工具,可以监控当前的连接用户和正在执行的命令。 mytop安装,使用mytop监控MySQL性能 1. 安装TermReadKey 安装: tar xzvf TermReadKey cd TermReadKey perl Makefile.pl make make test make inst[详细]
-
SQL存储过程中运用BEGIN TRY捕捉错误并保存
所属栏目:[MySql教程] 日期:2022-04-09 热度:118
SQL存储过程中使用BEGIN TRY捕捉错误并保存: 1、创建保存错误的数据表: /*创建错误日志表*/ CREATE TABLE ErrorLog( errNum INT, ErrSev NVARCHAR(500), ErrState INT, ErrProc NVARCHAR(1000), ErrLine INT, ErrMsg NVARCHAR(2000) ) 2、创建保存错误信[详细]