先声明一点,ON DUPLICATE KEY UPDATE为Mysql特有语法,语句的作用是当insert已经存在的记录时,执行Update。
用法
什么意思?举个例子:
user_admin_t表中有一条数据如下
表中的主键为id,现要插入一条数据,id为1,password为第一次插入的密码,正常写法为:
INSERT INTO user_admin_t (_id,password) VALUES ('1','第一次插入的密码')
执行后刷新表数据,我们来看[……]
先声明一点,ON DUPLICATE KEY UPDATE为Mysql特有语法,语句的作用是当insert已经存在的记录时,执行Update。
什么意思?举个例子:
user_admin_t表中有一条数据如下
表中的主键为id,现要插入一条数据,id为1,password为第一次插入的密码,正常写法为:
INSERT INTO user_admin_t (_id,password) VALUES ('1','第一次插入的密码')
执行后刷新表数据,我们来看[……]
因项目迁移,使用的数据库也需要从Oracle迁移到MySQL 其中有个功能使用到了Oracle的Start with…Connect By递归树查询,而MySQL中没有此函数,但可以通过自定义函数的方式来解决这个问题
创建表
create table treeList( id varchar(10), -- 节点ID name varchar(10), -- 节点名称 pId varchar(10) -- 父ID )
插入测试数据
insert into tree[......]
ProxySQL是一个可以实现MySQL读写分离的轻量级工具。
[……]
Xtrabackup是一个对InnoDB做数据备份的工具,支持在线热备份(备份时不影响数据读写),是商业备份工具InnoDB Hotbackup的一个很好的替代品。Xtrabackup中包含两个工具:
* xtrabackup – 用于热备份innodb, xtradb表的工具,不能备份其他表。
* innobackupex – 对xtrabackup封装的perl脚本,提供了myisam表备份的能力。
Xtrabackup可以做什么
* 在线(热)备份整个[……]
不知道是不是每次更新 MySQL 软件之后都需要执行数据库升级指令?在我进行过的几次软件升级之后,总会在 MySQL 的日志中见到“[ERROR] Missing system table mysql.proxies_priv; please run mysql_upgrade to create it”之类的错误。虽然这个错误修复起来很简单,却不容易引起注意。
我在好几次见到这样的错误提示之后才决定好好看看到底写了些什么。因为网站运行很正常,就心想应该不怎么重要吧。错误提示大致内容如[……]
MySQL联表查询及联表删除都是经常需要用到的操作,下面对MySQL联表查询和联表删除都作了详细的介绍分析,希望对您有所帮助。
MySQL联表查询:
reference mysql manul:
3.2.7. SELECT语法13.2.7.1. JOIN语法
13.2.7.2. UNION语法
eg1:·mysql> SELECT t1.name, t2.salary FROM employee AS t1, info AS t2·-> WHERE t1.name = t2.[……]
【问题现象】
线上mysql数据库爆出一个慢查询,DBA观察发现,查询时服务器IO飙升,IO占用率达到100%, 执行时间长达7s左右。
SQL语句如下:
SELECT DISTINCT g.*, cp.name AS cp_name, c.name AS category_name, t.name AS type_name FROMgm_game
g LEFT JOIN gm_cp
cp ON cp.id = g.cp_id AND cp.deleted = 0 LEFT JOIN gm_ca[......]
explain显示了mysql如何使用索引来处理select语句以及连接表。可以帮助选择更好的索引和写出更优化的查询语句。
使用方法,在select语句前加上explain就可以了:
如:
explain select surname,first_name form a,b where a.id=b.id
EXPLAIN列的解释:
table:显示这一行的数据是关于哪张表的
type:这是重要的列,显示连接使用了何种类型。从最好到最差的连接类型为const、eq_reg[……]
step 1. 因为是64位的系统,所以先要安装libunwind,32位系统可以忽略此步
wget http://download.savannah.gnu.org/releases/libunwind/libunwind-1.1.tar.gz tar zxvf libunwind-1.1.tar.gz cd libunwind-1.1/ CFLAGS=-fPIC ./configure --enable-shared make CFLAGS=-fPIC make CFLAGS=-[......]