随笔分类 -  数据库

Mysql
摘要:单点登录SSO(Single Sign On)说得简单点就是在一个多系统共存的环境下,用户在一处登录后,就不用在其他系统中登录,也就是用户的一次登录能得到其他所有系统的信任。单点登录在大型网站里使用得非常频繁,例如像阿里巴巴这样的网站,在网站的背后是成百上千的子系统,用户一次操作或交易可能涉及到几十... 阅读全文
posted @ 2015-09-21 17:19 SunsCheung 阅读(151) 评论(0) 推荐(0)
摘要:1 使用explain语句去查看分析结果,如explain select * from test1 where id=1;会出现:idselecttypetabletype possible_keyskey key_lenref rowsextra各列其中,type=const表示通过索引一次就找到... 阅读全文
posted @ 2015-08-05 09:50 SunsCheung 阅读(158) 评论(0) 推荐(0)
摘要:sql语句优化性能不理想的系统中除了一部分是因为应用程序的负载确实超过了服务器的实际处理能力外,更多的是因为系统存在大量的SQL语句需要优化。为了获得稳定的执行性能,SQL语句越简单越好。对复杂的SQL语句,要设法对之进行简化。常见的简化规则如下:1)不要有超过5个以上的表连接(JOIN)2)考虑使... 阅读全文
posted @ 2015-07-16 14:38 SunsCheung 阅读(174) 评论(0) 推荐(0)
摘要:之前总是在MSSQL上写存储过程,没有在MYSQL上写过,也基本没有用过,今天需要用到MYSQL,研究了下,把项目的需要的存储过程写了一部分,写一下工作总结。这里没有给出数据库结构,不讨论SQL语句的细节,主要探讨存储过程语法,适合有基础的人。发表地址:http://www.cnblogs.com... 阅读全文
posted @ 2015-07-07 14:44 SunsCheung 阅读(360) 评论(0) 推荐(0)
摘要:mysql存储过程详解1.存储过程简介我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。一个存储... 阅读全文
posted @ 2015-07-07 14:43 SunsCheung 阅读(220) 评论(0) 推荐(0)
摘要:简介:一个存储过程包括名字,参数列表,以及可以包括很多SQL语句的SQL语句集。一个存储过程包括名字,参数列表,以及可以包括很多SQL语句的SQL语句集。创建存储过程:语法:CREATE PROCEDURE p() BEGIN /*此存储过程的正文*/ ENDCREATE PROCEDURE pro... 阅读全文
posted @ 2015-07-07 14:41 SunsCheung 阅读(185) 评论(0) 推荐(0)
摘要:选择正确的存储引擎以 MySQL为例,包括有两个存储引擎 MyISAM 和 InnoDB,每个引擎都有利有弊。MyISAM 适合于一些需要大量查询的应用,但其对于有大量写操作并不是很好。甚至你只是需要update一个字段,整个表都会被锁起来,而别的进程,就算是读进程都无法操作直到update操作完成... 阅读全文
posted @ 2015-07-07 13:43 SunsCheung 阅读(191) 评论(0) 推荐(0)
摘要:1、 首先要搞明白什么叫执行计划?执行计划是数据库根据SQL语句和相关表的统计信息作出的一个查询方案,这个方案是由查询优化器自动分析产生的,比如一条SQL语句如果用来从一个 10万条记录的表中查1条记录,那查询优化器会选择“索引查找”方式,如果该表进行了归档,当前只剩下5000条记录了,那查询优化器... 阅读全文
posted @ 2015-07-02 15:41 SunsCheung 阅读(154) 评论(0) 推荐(0)
摘要:索引优化,查询优化,查询缓存,服务器设置优化,操作系统和硬件优化,应用层面优化(web服务器,缓存)等等。这里的记录的优化技巧更适用于开发人员,都是从网络上收集和自己整理的,主要是查询语句上面的优化,其它层面的优化技巧在此不做记录。查询的开销指标:执行时间检查的行数返回的行数建立索引的几个准则:1、... 阅读全文
posted @ 2015-07-02 15:37 SunsCheung 阅读(170) 评论(0) 推荐(0)
摘要:测试mysql大数据量下的查询速度,想循环插入10W条或者更多记录到数据库中,发现可以用存储过程插入,记录一下DROP PROCEDURE if exists insertdata;delimiter //CREATE PROCEDURE insertdata() begin declare num... 阅读全文
posted @ 2015-07-02 13:42 SunsCheung 阅读(589) 评论(0) 推荐(0)
摘要:mysql如何开启对外连接?1.修改Mysql配置文件 /etc/mysql/my.cnf注释掉 bind-address = 127.0.0.1vi /etc/hosts.allow添加:Mysqld: ALL2.重启Mysql sudo /etc/init.d/mysql restart3.... 阅读全文
posted @ 2015-03-17 09:22 SunsCheung 阅读(1015) 评论(0) 推荐(0)
摘要:在web开发中,我们经常会写出一些SQL语句,一条糟糕的SQL语句可能让你的整个程序都非常慢,超过10秒一般用户就会选择关闭网页,如何优化SQL语句将那些运行时间 比较长的SQL语句找出呢?MySQL给我们提供了一个很好的功能,那就是慢查询!所谓的慢查询就是通过设置来记录超过一定时间的SQL语句!那... 阅读全文
posted @ 2015-02-25 23:37 SunsCheung 阅读(190) 评论(0) 推荐(0)