mysql、memache、redis
橙虚缘
这个作者很懒,什么都没留下…
展开
-
mysql锁和索引关系
在平时我们用mysql的锁时,一般刚接触数据库是很少考虑锁的效率,一般只求到达防止并发的目的就可以了,但是随着数据量的增大我们就会发现有很多sql我们已经写的非常优化了,但是有时候还是很慢,很难找到原因,这时候我们就应该考虑一下是不是mysql的锁在导致的。我们首先建立一个新的数据表:这里我们的主键默认是有索引的;这边加几条数据然后我们开两个进程进行测试:先加一个where条件没有涉及到索引的锁:...转载 2013-08-02 11:09:49 · 930 阅读 · 0 评论 -
sql语句笔记
1: 基础查询 where的练习:1.1:主键为32的商品select goods_id,goods_name,shop_price from ecs_goods where goods_id=32;1.2:不属第3栏目的所有商品select goods_id,cat_id,goods_name,shop_price from原创 2013-08-07 17:19:11 · 2235 阅读 · 0 评论 -
数据库设计原则
1. 原始单据与实体之间的关系 可以是一对一、一对多、多对多的关系。在一般情况下,它们是一对一的关系:即一张原始单据对应且只对应一个实体。 在特殊情况下,它们可能是一对多或多对一的关系,即一张原始单证对应多个实体,或多张原始单证对应一个实体。 这里的实体可以理解为基本表。明确这种对应关系后,对我们设计录入界面大有好处。 〖例1〗:一份员工履历资料,在人力资源信息系统中,转载 2016-07-27 09:53:29 · 517 阅读 · 0 评论 -
mysql进阶:mysql优化篇——sql优化
前言:主要参考《深入浅出mysql数据库开发、优化与管理维护》、《高性能mysql》 、大神博客文章最近看了这些书籍发现MySql 这个数据库绝对是适合dba级的高手去玩的,一般做一个1万篇新闻的小型系统怎么写都可以,用xx框架可以实现快速开发。可是数据量到了10万,百万至千万,他的性能还能那么高吗?一点小小的失误,可能造成整个系统的改写,甚至慢到系统无法正常运行!所以对于我们程序员来说认原创 2013-07-30 23:17:07 · 1199 阅读 · 0 评论 -
MySQL系统结构
1.MySQL整体逻辑架构我们先下图看看mysql整体逻辑架构(MySQL’s Logical Architecture) 图1 第一层,即最上一层,所包含的服务并不是MySQL所独有的技术。它们都是服务于C/S程序或者是这些程序所需要的 :连接处理,身份验证,安全性等等。第二层值得关注。这是My转载 2013-08-07 15:43:52 · 831 阅读 · 0 评论 -
mysql进阶:mysql优化篇——索引与优化
前言:主要参考《深入浅出mysql数据库开发、优化与管理维护》、《高性能mysql》 、大神博客文章最近看了这些书籍发现MySql 这个数据库绝对是适合dba级的高手去玩的,一般做一个1万篇新闻的小型系统怎么写都可以,用xx框架可以实现快速开发。可是数据量到了10万,百万至千万,他的性能还能那么高吗?一点小小的失误,可能造成整个系统的改写,甚至慢到系统无法正常运行!所以对于我们程序员来说认原创 2013-08-07 22:23:14 · 805 阅读 · 0 评论 -
mysql进阶:mysql优化篇——锁
锁是计算机协调多个进程或纯线程并发访问某一资源的机制。在数据库中,除传统的计算资源(CPU、RAM、I/O)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所在有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。 概述 相对其他数据库而言,MySQL的锁机制比较原创 2013-08-08 13:03:48 · 2118 阅读 · 0 评论 -
mysql进阶:mysql优化篇——参数配置
触发器:trigger 作用: 监视某种情况并触发某种操作.观察以下场景:一个电子商城,商品表, g主键商品名库存1电脑282自行车12订单表, o订单主键商品外键购买数量原创 2013-08-08 13:15:30 · 761 阅读 · 0 评论 -
MySQL 主从复制与读写分离概念及架构分析
1.MySQL主从复制入门首先,我们看一个图:影响MySQL-A数据库的操作,在数据库执行后,都会写入本地的日志系统A中。 假设,实时的将变化了的日志系统中的数据库事件操作,在MYSQL-A的3306端口,通过网络发给MYSQL-B。 MYSQL-B收到后,写入本地日志系统B,然后一条条的将数据库事件在数据库中完成。 那么,MYSQL转载 2017-01-03 17:06:30 · 1628 阅读 · 1 评论 -
mysql主从配置实现
主从复制原理: 1 复制架构图 2 初始化图3 复制原理MySQL使用3个线程来执行复制功能(其中1个在主服务器上,另两个在从服务器上)。当发出start slave时,从服务器创建一个I/O线程,以连接主服务器并让它发送记录在其二进制日志中的语句。主服务器创建一个线程将二进制日志中的内容发送到从服务器。该线程转载 2013-10-01 22:33:27 · 581 阅读 · 0 评论 -
Mysql并发时死锁原因及解决方法
1.什么是视图?视图是由查询结果形成的一张虚拟表。2.什么时候要用到视图?如果某个查询结果出现的非常频繁,也就是,要经常拿这个查询结果来做子查询3.视图的创建语法:create view 视图名 as select 语句;4.使用视图有什么好处呢? ①简化查询语句 比如:有一张商品表,我们经常要查每个栏目下商品的平均价格 select cat_id,avg转载 2015-08-26 18:29:30 · 1648 阅读 · 0 评论 -
mysql表损坏修复
1.表损坏的原因分析以下原因是导致mysql 表毁坏的常见原因: 1、 服务器突然断电导致数据文件损坏。 2、 强制关机,没有先关闭mysql 服务。 3、 mysqld 进程在写表时被杀掉。 4、 使用myisamchk 的同时,mysqld 也在操作表。 5、 磁盘故障。 6、 服务器死机。 7、 mysql 本身的bug 。 2.表损坏的症状 一个转载 2017-09-18 16:18:10 · 602 阅读 · 0 评论 -
使用mysql来实现lbs排序
目前基于LBS地理位置的搜索已经应用非常广了,的确是个很方便的东西。我们做程序的就是要考虑如何通过这些功能,来做出更符合用户的内容来。1,如何获取位置例如微信,可以通过发送地理位置来获取到当前用户的经纬度。查看在网页端,可以使用html5获取地理定位。查看2,数据表设计数据库中要预存自己的位置数据,如何获取数据请查看相关地图api。字段:十进转载 2017-10-24 18:11:38 · 814 阅读 · 1 评论 -
MySQL提示“too many connections”的解决办法
今天生产服务器上的MySQL出现了一个不算太陌生的错误“Too many connections”。平常碰到这个问题,我基本上是修改/etc/my.cnf的max_connections参数,然后重启数据库。但是生产服务器上数据库又不能随便重启。没办法,只好想办法手动去释放一些没用的连接。登陆到MySQL的提示符下,数据show processlist这个命令,可以得到所以连接到这转载 2017-04-03 20:00:41 · 25257 阅读 · 1 评论 -
redis中文文档——php
Redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。转载 2016-12-12 11:08:59 · 541 阅读 · 0 评论 -
PHP MYSQL注入攻击需要预防7个要点
1:数字型参数使用类似intval,floatval这样的方法强制过滤。 2:字符串型参数使用类似mysql_real_escape_string这样的方法强制过滤,而不是简单的addslashes。 3:最好抛弃mysql_query这样的拼接SQL查询方式,尽可能使用PDO的prepare绑定方式。 4:使用rewrite技术隐藏真实脚本及参数的信息,通过rewrite正则也能过滤转载 2014-02-07 22:41:15 · 635 阅读 · 0 评论 -
左连接、右连接、内连接、外连接、union连接
A表(a1,b1,c1) B表(a2,b2) a1 b1 c1 a2 b2 01 数学 95 01 张三 02 语文 90 02 李四 03 英语 80 04 王五 select A.*,B.* from A left outer join B on(A.a1=B.a2) 结果是: a1 b1 c1 a2 b2 01 数学 95 01 张三 02 语文 90 02 李四 0原创 2013-08-07 18:34:05 · 4136 阅读 · 0 评论 -
MySQL Error Number 1005 Can’t create table ‘XX.frm’ (errno: 150)
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/herosen/archive/2009/04/26/4124626.aspxThis is a very common error when create a mysql table , even some people has take it as a mysql bug and commit it to转载 2013-09-03 17:00:30 · 687 阅读 · 0 评论 -
mysql外键
在MySQL 3.23.44版本后,InnoDB引擎类型的表支持了外键约束。外键的使用条件:1.两个表必须是InnoDB表,MyISAM表暂时不支持外键(据说以后的版本有可能支持,但至少目前不支持);2.外键列必须建立了索引,MySQL 4.1.2以后的版本在建立外键时会自动创建索引,但如果在较早的版本则需要显示建立; 3.外键关系的两个表的列必须是数据类型相似,也就是可以相互转换转载 2013-09-30 20:46:47 · 584 阅读 · 0 评论 -
mysql 视图的作用
转自:http://blog.csdn.net/fm0517/article/details/5625949 视图是从一个或几个基本表(或视图)导出的表。它与基本表不同,是一个虚表。数据库只存放视图的定义,而不存放视图对应的数据,这些数据仍存放在原来的基本表中。所以基本表中的数据发生变化,从视图中查询出的数据也就随之改变了。从这个意义上讲,视图就像一个窗口,透过它可以看到数据库中自己转载 2013-10-24 21:42:51 · 752 阅读 · 0 评论 -
MySQL Workbench中文教程
转载自:http://blog.csdn.net/jaymade/article/details/6322343MySQL Workbench 是 MySQL AB 最近释放的可视数据库设计工具。这个工具是设计 MySQL 数据库的专用工具。MySQL Workbench 是 MySQL AB 最近释放的可视数据库设计工具。这个工具是设计 MySQL 数据库的专用工具。你在 MyS转载 2013-11-05 18:02:14 · 1843 阅读 · 0 评论 -
无法启动mysql服务,错误1067(请先检查mysql日志错误,对症下药)
问题表象:我的mysql中的 my.ini文件配置:[csharp] view plaincopy#Path to installation directory. All paths are usually resolved relative to this. basedir="D:/software_builder/mysql/" #Path to th转载 2014-02-01 10:48:35 · 934 阅读 · 1 评论 -
Mysql 的内外连接 (inner join,默认内连接) 外连接(left join,right join)
1、内联接(典型的联接运算,使用像 = 或 内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行。例如,检索 students和courses表中学生标识号相同的所有行。 2、外联接。外联接可以是左向外联接、右向外联接或完整外部联接。 在 FROM子句中指定外联接时,可以由下列几组关键字中的一组指定: 1)LEFT JOIN左向外联接的原创 2015-08-26 17:54:33 · 3404 阅读 · 0 评论 -
30多条mysql数据库优化方法,千万级数据库记录查询轻松解决
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,Sql 代码 : select id from t where num is null;可以在 num 上设置默认值 0,确保表中 num 列没有 null 值,然后这样查转载 2015-08-26 18:02:06 · 554 阅读 · 0 评论 -
mysql分区功能详细介绍,以及实例
一,什么是数据库分区前段时间写过一篇关于mysql分表的的文章,下面来说一下什么是数据库分区,以mysql为例。mysql数据库中的数据是以文件的形势存在磁盘上的,默认放在/mysql/data下面(可以通过my.cnf中的datadir来查看),一张表主要对应着三个文件,一个是frm存放表结构的,一个是myd存放表数据的,一个是myi存表索引的。如果一张表的数据量太大的话,那么myd,myi转载 2015-12-03 10:23:06 · 1072 阅读 · 0 评论 -
mysql分表的3种方法
一,先说一下为什么要分表当一张的数据达到几百万时,你查询一次所花的时间会变多,如果有联合查询的话,我想有可能会死在那儿了。分表的目的就在于此,减小数据库的负担,缩短查询时间。根据个人经验,mysql执行一个sql的过程如下:1,接收到sql;2,把sql放到排队队列中 ;3,执行sql;4,返回执行结果。在这个执行过程中最花时间在什么地方呢?第一,是排队等待的时间,第二,sql的执行时转载 2015-12-03 10:01:55 · 1258 阅读 · 0 评论 -
PHP实现多服务器共享SESSION数据-mysql实现
一、问题起源 稍大一些的网站,通常都会有好几个服务器,每个服务器运行着不同功能的模块,使用不同的二级域名,而一个整体性强的网站,用户系统是统一的,即一套用户名、密码在整个网站的各个模块中都是可以登录使用的。各个服务器共享用户数据是比较容易实现的,只需要在后端放个数据库服务器,各个服务器通过统一接口对用户数据进行访问即可。但还存在一个问题,就是用户在这个服务器登录之后,进入另一个服务器转载 2016-04-11 11:32:15 · 414 阅读 · 0 评论 -
mysql常用函数
转载自http://blog.csdn.net/sugang_ximi/article/details/6664748一、数学函数ABS(x) 返回x的绝对值BIN(x) 返回x的二进制(OCT返回八进制,HEX返回十六进制)CEILING(x) 返回大于x的最小整数值EXP(x) 返回值e(自然对数的底)的x次方FLOOR(x) 返回小于x的最大整转载 2013-09-30 19:58:13 · 527 阅读 · 0 评论 -
MySQL性能优化的最佳20+条经验
今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我 们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过 多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。1.转载 2014-04-18 14:51:49 · 616 阅读 · 0 评论 -
mysql,redis,mongodb的使用场景及区别
MongoDB 的适用场景为:数据不是特别重要(例如通知,推送这些),数据表结构变化较为频繁,数据量特别大,数据的并发性特别高,数据结构比较特别(例如地图的位置坐标),这些情况下用 MongoDB , 其他情况就还是用 MySQL ,这样组合使用就可以达到最大的效率。MongoDB和Redis区别简介MongoDB更类似Mysql,支持字段索引、游标操作,其优势在于查询功能比较强大,擅长查询JSO...转载 2017-07-24 16:17:57 · 2597 阅读 · 0 评论