
mysql
dumb_man
这个作者很懒,什么都没留下…
展开
-
mysql初级学习 引擎与事物
[/img] [img] [/img] [img] [/img] [img] [/img] 关于事物的引擎选用innodb; 事物的使用: 开启事物: start transaction; sql... sql... commit提交 rollback回滚。有写时候某些语句会引起事物的隐式提交,比如 start transaction等,也会造成事物的提交。 注意:当一个事物 commit或原创 2017-11-20 17:44:56 · 191 阅读 · 0 评论 -
Got a packet bigger than \'max_allowed_packet\' bytes问题排除
Got a packet bigger than ‘max_allowed_packet’ bytes or ERROR 1153 (08S01) at line 616: Got a packet bigger than ‘max_allowed_packet’ by tes... 昨天用导入数据的时候发现有的地方有这个错误。 后来才发现我用RPM包装的MYSQL配置文件里面有old_pas原创 2017-11-20 17:46:20 · 444 阅读 · 0 评论 -
【MySQL】查看MySQL配置文件路径及相关配置
(1)关于配置文件路径有时候,我发现虽然尝试修改了配置文件的一些变量,但是并没有生效。后来才发现原来是因为修改的文件并非MySQL服务器读取的配置文件。如果不清楚MySQL当前使用的配置文件路径,可以尝试这样查看:从上图可以看出, 服务器首先会读取/etc/my.cnf文件,如果发现该文件不存在,再依次尝试从后面的几个路径进行读取。(2)关于配置文件配置项分段配置文件my.cnf通常会分成好几部分原创 2017-11-20 17:46:23 · 699 阅读 · 0 评论 -
mysql数据库备份和恢复
备份: 1、数据库 mysqldump -uroot -p zabbix >zabbix.sql 2、hosts表 mysqldump -uroot -p zabbix hosts > hosts.sql 恢复: (首先在数据库中建数据库 mysql> create database zabbix; ) 1、数据库原创 2017-11-20 17:47:10 · 259 阅读 · 0 评论 -
MySQL锁定状态查看命令
1 show processlist;SHOW PROCESSLIST显示哪些线程正在运行。您也可以使用mysqladmin processlist语句得到此信息。如果您有SUPER权限,您可以看到所有线程。否则,您只能看到您自己的线程(也就是,与您正在使用的MySQL账户相关的线程)。如果有线程在update或者insert 某个表,此时进程的status为updating 或者 sending原创 2017-11-20 17:47:17 · 201 阅读 · 0 评论 -
迁移zabbix引发的一次MySQL锁阻塞
整体迁移zabbix,备份数据库时发现history开头的表都很大(8GB+)。zabbix的数据存储机制让zabbix每小时对history*表进行统计,统计值(最大值、最小值、平均值)放到trends*表中。注:zabbix配置监控项时有历史数据保存时间、趋势数据保存时间两项,分别对应history*、trends*。备份zabbix数据库,由于history*表很大,为了减轻备份压力和缩短迁原创 2017-11-20 17:47:20 · 977 阅读 · 0 评论 -
用shell脚本循环加判断生成sql脚本
使用shell脚本的循环加判断向一个表中插入1000000条记录。#!/bin/bashSQL=./insert_da_printer.sqlecho "use ise;">>${SQL}echo "LOCK TABLES \`DA_Printer\` WRITE;">>${SQL}echo "insert into DA_Printer(p_name,prt_ip) values ">>${SQ原创 2017-11-20 17:47:28 · 1517 阅读 · 0 评论 -
解决ERROR 2006 (HY000) at line XX: MySQL server has gone away问题
今天有在解决公司一个客户网站迁移VPS主机的时候导入数据库出现"ERROR 2006 (HY000) at line 534: MySQL server has gone away"的错误提示问题,一般这样的问题会发生在数据库过大,而且配置文件可能限制最大数据库文件导致的,顺带把解决方法记录下来,以便于下次有使用的时候直接解决。第一、找到my.cnf文件根据不同的服务器配置WEB环境,找到当前服务原创 2017-11-20 17:47:31 · 1854 阅读 · 0 评论 -
mysql中的explain的使用
转自:http://www.cnblogs.com/you-yang/archive/2012/01/18/2325841.html在对某个Query优化过程中,须要不断地使用explain来验证各种调整是否有效。 MySQL explain功能展示的各种信息的解释如下:id: MySQL Query Optimizer 选定的执行计划中查询的序列号。select_type: 所使用的查询类型,原创 2017-11-20 17:47:34 · 292 阅读 · 0 评论 -
mysql中的查询优化步骤
转自:http://www.cnblogs.com/hongfei/archive/2012/10/20/2732516.htmlMySql优化的一般步骤:1.通过show status 命令了解各种sql的执行效率 SHOW STATUS提供msyql服务器的状态信息 一般情况下,我们只需要了解以”Com”开头的指令 show session status like ‘Com%’:显示当前原创 2017-11-20 17:47:37 · 780 阅读 · 0 评论 -
提高mysql千万级大数据SQL查询优化30条经验(Mysql索引优化注意)
转自:http://www.jincon.com/archives/120/1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中原创 2017-11-20 17:47:41 · 180 阅读 · 0 评论 -
数据库设计中是设计联合主键还是唯一索引+单一主键好?
在一个表中user_id和type两个字段唯一确定一条记录,那么在设计中是将这两个字段设计为联合主键呢,还是建立一个逻辑主键id,而将这两个字段设计为唯一索引呢?这两种方式有什么区别?哪个更好呢?具体还是要看你的业务需求。另外说些在读写操作上的区别:1.主键和符合主键在查询上没什么性能上的区别(前提是索引相同,运用得当)2.写的性能上是有区别的,因为符合主键会使用更多的block去创建索引,所以在原创 2017-11-20 17:46:11 · 4988 阅读 · 0 评论 -
MySQL外键约束On Delete、On Update各取值的含义
主键、外键和索引的区别? 主键外键索引定义:唯一标识一条记录,不能有重复的,不允许为空表的外键是另一表的主键, 外键可以有重复的, 可以是空值主索引(由关键字PRIMARY定义的索引),用于表的主键上,不可重复,不可为空;普通索引(由关键字KEY或INDEX定义的索引)可以重复;唯一索引(由关键字UNIQUE定义的索引),不可重复,但可以有多个空值作用:用来保证数据完整性用来和其他表建立联系用的原创 2017-11-20 17:46:07 · 706 阅读 · 0 评论 -
触发器里 after 和 before的区别
after是先完成数据的增、删、改再触发 触发的语句晚于监视的增、删、改,无法影响前面的增删改动作。 before是先完成触发,再增、删、改。 触发的语句先于监视的增、删、改发生,我们有机会判断即将发生的操作。 典型案例: 对于所下订单,进行判断,如果订单的数量 > 5,就认为是恶意订单,强制把订购的商品数量改成 5. Demo 第一、创建库存表如下: [img] [/img] 第二、创建订单表原创 2017-11-20 17:44:59 · 1195 阅读 · 0 评论 -
MySQL collation方法收集
收集1:问题是这样的: 一张test的表,字符集采用的latin1。 select to_id from test where to_id='cn象_王'; +---------------+ | to_id | +---------------+ | cn陶_陶 | | cn象_王 | +---------------+ 2 rows in set (0.00 sec) 取cn象_王的数据,居然原创 2017-11-20 17:45:11 · 307 阅读 · 0 评论 -
sql server与mysql差异收集
之后会陆续收集,先写一点:1、sql server中的IDENTITY在mysql中的表现形式。mysql中没有identity()函数,要设置自动编号的话应当是用AUTO_INCREMENT 例如:create table TBL_TOPIC( topicId int not null AUTO_INCREMENT primary key, title varchar(50)原创 2017-11-20 17:45:15 · 253 阅读 · 0 评论 -
mysql复合主键如何设定自增长属性
这个可以有,需注意把自增长列放在复合主键的第一个位置,也就是最左边。比如:create table t(a int auto_increment,b int,key (a,b))这个问题分两种情况讨论。1、myisam引擎.复合索引可以包含一个auto_increment,而且这个auto_increment列可以不是第一列。如果auto_increment没在第一列,那么自增长列可以根据前面几列原创 2017-11-20 17:45:38 · 1437 阅读 · 0 评论 -
mysql的数据类型
看:http://www.cnblogs.com/kissdodog/p/4159176.html原创 2017-11-20 17:45:41 · 124 阅读 · 0 评论 -
一个表的字段不是主键可以做其他表的外键么
一个表的外键关联到主表的主键约束或者unique约束都可以,不一定非要主键约束追问:也就是意思是只要能唯一标识一张表中数据,就可以做外键?追答:嗯,但是不能是数据上控制的,必须要有两个约束之一才行原创 2017-11-20 17:45:47 · 13818 阅读 · 0 评论 -
unique的数据项可以为空,外键的值也可以为空
unique的数据项可以为空,外键的值也可以为空,外键也可以关联unique的数据。原创 2017-11-20 17:45:53 · 1860 阅读 · 0 评论 -
mysql多对多的关系如何表示(主键也可做外键)
mysql> CREATE TABLE course ( -> course_NO INT PRIMARY KEY -> );Query OK, 0 rows affected (0.19 sec)mysql>mysql> CREATE TABLE teacher ( -> teacher_ID INT PRIMARY KEY -> );Query OK, 0原创 2017-11-20 17:45:57 · 3207 阅读 · 0 评论 -
mysql数据库中外键的级联删除功能
转自:http://www.chinaunix.net/old_jh/17/462977.html作者:Dirk (dirk.ye AT gmail.com) Url:http://dirk.pdx.cn 日期:2004/12/08 首先,目前在产品环境可用的MySQL版本(指4.0.x和4.1.x)中,只有InnoDB引擎才允许使用外键,所以,我们的数据表必须使用InnoDB引擎。 下面,我原创 2017-11-20 17:46:01 · 538 阅读 · 0 评论 -
Mysql中的Cascade,NO ACTION,Restrict,SET NULL几种功能说明
Mysql中的Cascade,NO ACTION,Restrict,SET NULL 外键约束对子表的含义: 如果在父表中找不到候选键,则不允许在子表上进行insert/update 外键约束对父表的含义: 在父表上进行update/delete以更新或删除在子表中有一条或多条对应匹配行的候选键时,父表的行为取决于:在定义子表的外键时指定的on update/on delete子句, InnoD原创 2017-11-20 17:46:04 · 1333 阅读 · 0 评论 -
MySQL性能优化的21个最佳实践
今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。 1. 为查询原创 2017-11-20 17:47:44 · 216 阅读 · 0 评论