mysql
懵懂and无知
= = 学好php 走遍天下
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
数据库三范式 简单理解
总归来说,简单来说 1NF:字段不可分; 2NF:有主键,非主键字段依赖主键; 3NF:非主键字段不能相互依赖;解释: 1NF:原子性 字段不可再分,否则就不是关系数据库; 2NF:唯一性 一个表只说明一个事物; 3NF:每列都与主键有直接关系,不存在传递依赖;原创 2017-01-10 09:35:16 · 427 阅读 · 0 评论 -
防止sql注入的方法
(1)对于动态构造SQL查询的场合,可以使用下面的技术:第一:替换单引号,即把所有单独出现的单引号改成两个单引号,防止攻击者修改SQL命令的含义。再来看前面的例子,“SELECT * from Users WHERE login = ”’ or ”1”=”1’ AND password = ”’ or ”1”=”1’”显然会得到与“SELECT * from Users WHERE login =转载 2017-02-18 08:41:44 · 554 阅读 · 0 评论 -
处理百万级以上的数据提高查询速度的方法:
处理百万级以上的数据提高查询速度的方法:1.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。2.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。3.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t转载 2017-02-28 11:05:33 · 462 阅读 · 0 评论 -
sql注入是什么
sql注入:利用现有应用程序,将(恶意)的SQL命令注入到后台数据库执行一些恶意的操作造成SQL注入的原因是因为程序没有有效过滤用户的输入,使攻击者成功的向服务器提交恶意的SQL查询代码,程序在接收后错误的将攻击者的输入作为查询语句的一部分执行,导致原始的查询逻辑被改变,额外的执行了攻击者精心构造的恶意代码防止策略 1.严格限制Web应用的数据库的操作权限,给此用户提供仅仅能够满足其工作的最低权转载 2017-02-22 14:50:07 · 9097 阅读 · 0 评论 -
乐观锁与悲观锁
悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。乐观锁(Optimistic Lock), 顾名思义,就是很乐观,每次去拿数据的时候都认为别人不会修改,所以不会上锁原创 2017-02-19 21:23:56 · 225 阅读 · 0 评论 -
数据库的性能
Qps:每秒钟处理的查询量 Tps: 大量的并发:数据库连接数被占满 超高的CPU使用率:因CPU资源耗尽而出现宕机 磁盘IO:磁盘Io性能突然下降(使用更快的磁盘设备) 其他大量消耗磁盘性能的计划任务(调整计划任务,做好磁盘维护) 网卡流量:网卡IO被沾满(1000MB/8~~100Mb) 如何避免无法连接数据库的情况: 1.减少从服务器的数量 2.进行分级缓存 3.避免使用s原创 2017-02-24 15:56:55 · 310 阅读 · 0 评论 -
Mysql基准测试
基准测试是什么 基准测试是 针对系统设置的一种压力测试 直接、简单、易于比较、用于评估服务器的处理能力 一种简化了的压力测试 压力测试 需要针对不同主题,所使用的数据和查询也是真是用到的 基准测试 可能不关心业务逻辑,所使用的查询和业务的真实性可以和业务环境没关系基准测试的目的 建立Mysql服务器的性能基准线 模拟比当前系统更高的负载,以找出系统的扩展瓶颈 测试不同的硬件、软原创 2017-02-24 16:31:13 · 463 阅读 · 0 评论 -
tp3.2配置mysql主从
注意事项:1、首先得配置好MySQL主从,可以多主多从2、在读写分离的情况下,默认第一个数据库配置是主服务器的配置信息,负责写入数据,如果设置了DB_MASTER_NUM参数,则可以支持多个主服务器写入。其它的都是从数据库的配置信息,负责读取数据,数量不限制。每次连接从服务器并且进行读取操作的时候,系统会随机进行在从服务器中选择 3、调用模型的CURD操作的话,系统会自动判断当前执行的方法的读操作转载 2017-04-10 12:03:04 · 2329 阅读 · 0 评论 -
MySQL数据表中内容大小写区分的设置
MySQL数据表中内容大小写区分的设置MYSQL在默认的情况下查询是不区分大小写的,例如: mysql> create table t1( -> name varchar(10)); Query OK, 0 rows affected (0.09 sec) mysql> insert into t1 values('you'),('You'),('YOU'); Query OK, 3 rows转载 2017-05-19 17:40:13 · 1059 阅读 · 0 评论
分享