-
登录Facebook与Twitter
所属栏目:[MySql教程] 日期:2022-04-10 热度:79
F acebook和Twitter在社交网络世界中变得越来越大,两个网络都提供oAuth支持。 我们开发了一个用Twitter和Facebook登录的系统。 如今网页用户对填写大型注册表不感兴趣。 此脚本可帮助您避免注册表单,它非常有用且易于集成。 该教程包含三个名为 facebook[详细]
-
MySQL 5.5 INSERT ON DUPLICATE KEY UPDATE语句解说
所属栏目:[MySql教程] 日期:2022-04-10 热度:126
执行INSERT ... ON DUPLICATE KEY UPDATE语句,如果INSERT的语句插入的值和已有的UNIQUE索引或主键重复的话,MySQL会更新已存在的行。 测试没有主键和UNIQUE索引的表 mysql select * from dept2; +--------+-------------+-------------+ | deptno | dname[详细]
-
innodb next-key lock引发的死锁现象解析
所属栏目:[MySql教程] 日期:2022-04-10 热度:62
这个例子是我在网上看到的,我分析了很久才弄明白锁产生的具体过程。 数据库的事务隔离级别是RR。 建测试表: CREATE TABLE `LockTest` ( `order_id` varchar(20) NOT NULL, `id` bigint(20) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`id`), KEY `idx_order[详细]
-
MySQL Drop Table删除表
所属栏目:[MySql教程] 日期:2022-04-09 热度:181
删除现有MySQL表这是很容易的,但必须非常小心,当删除任何现有的表,删除表后丢失的数据将不能恢复。 语法 这是用来删除MySQL表的通用SQL语法: DROP TABLE table_name ; 1、从命令行提示符删除表 这需要只是在 MySQL提示符下执行DROP TABLE SQL命令。 示[详细]
-
MySQL Insert插入数据
所属栏目:[MySql教程] 日期:2022-04-09 热度:114
想要将数据插入到MySQL表,需要使用SQL INSERT INTO命令。 可以通过用mysql提示符或通过使用像PHP脚本将任何数据插入到MySQL表。 语法 这里是INSERT INTO命令将数据插入到MySQL表的通用SQL语法: INSERT INTO table_name ( field1, field2,...fieldN ) VAL[详细]
-
MySQL Select查询
所属栏目:[MySql教程] 日期:2022-04-09 热度:60
SQL SELECT命令用于从MySQL数据库获取数据。可以在MySQL提示符使用这个命令,以及任何像PHP的脚本和语言等。 语法 下面是通用的SQL的SELECT命令语法,从MySQL表获取数据: SELECT field1, field2,...fieldN table_name1, table_name2... [WHERE Clause] [O[详细]
-
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-[详细]