mySQL
PHPService
这个作者很懒,什么都没留下…
展开
-
PHP连接MySQL出现乱码的一些个人看法
<br />PHP连接MySQL的过程中如果出现乱码很多人会说,用"Set names '??'"就能解决问题,但很多时候还是会出现各种怪现象,比如说页面能正常存取,但是phpmyadmin不能正常存取等现象。小弟经过验证,产生了一些个人看法,欢迎大家讨论和指正。<br /><br />MySQL数据库操作过程中出现了三种字符集:<br />1、页面字符集(也就是 content="TEXT/HTML; CHARSET=GBK")<br />2、连接字符集(也就是 "Set names 'GBK'")<br原创 2010-08-14 09:27:00 · 504 阅读 · 0 评论 -
MySQL分区性能初探
一, 分区概念 分区允许根据指定的规则,跨文件系统分配单个表的多个部分。表的不同部分在不同的位置被存储为单独的表。MySQL从5.1.3开始支持Partition。分区和手动分表对比手动分表 分区多张数据表一张数据表重复数据的风险没有数据重复的风险写入多张表写入一张表转载 2015-07-04 13:33:58 · 424 阅读 · 0 评论 -
MySQL如何利用索引优化ORDER BY排序语句
MySQL索引通常是被用于提高WHERE条件的数据行匹配或者执行联结操作时匹配其它表的数据行的搜索速度。MySQL也能利用索引来快速地执行ORDER BY和GROUP BY语句的排序和分组操作。通过索引优化来实现MySQL的ORDER BY语句优化:1、ORDER BY的索引优化。如果一个SQL语句形如:SELECT [column1],[column2],转载 2015-07-05 16:11:02 · 773 阅读 · 0 评论 -
MySQL水平分区表实际操作总结
MySQL分区表操作代码 (本案例按月分区): 1. 创建分区表Sql代码 CREATE TABLE `表名` ( `EQUIPMENTID` char(17) NOT NULL, `ATTRIBUTEID` char(4) NOT NULL, `VALUE` varchar(20) NOT NULL, `COLLE转载 2015-07-05 23:41:10 · 455 阅读 · 0 评论 -
MYSQL事务处理
事务处理在各种管理系统中都有着广泛的应用,比如人员管理系统,很多同步数据库操作大都需要用到事务处理。比如说,在人员管理系统中,你删除一个人员,你即需要删除人员的基本资料,也要删除和该人员相关的信息,如信箱,文章等等,这样,这些数据库操作语句就构成一个事务! 删除的SQL语句delete from userinfo where ~~~delete from mail where转载 2015-08-19 09:48:11 · 586 阅读 · 0 评论 -
mysql的left join,right join,inner join用法分析
比较详细的mysql的几种连接功能分析,只要你看完就能学会的好东西下面是例子分析表A记录如下: aID aNum 1 a20050111 2 a20050112 3 a20050113 4 a20050114 5 a20050115转载 2016-07-01 11:18:08 · 455 阅读 · 0 评论 -
mysql之触发器trigger
触发器(trigger):监视某种情况,并触发某种操作。触发器创建语法四要素:1.监视地点(table) 2.监视事件(insert/update/delete) 3.触发时间(after/before) 4.触发事件(insert/update/delete)语法:create trigger triggerNameafter/before insert/upda转载 2016-07-01 11:15:25 · 378 阅读 · 0 评论 -
mysql主从复制配置
一.mysql主从备份(复制)的基本原理mysql支持单向、异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器。mysql复制基于主服务器在二进制日志中跟踪所有对数据库的更改(更新、删除等等)。因此,要进行复制,必须在主服务器上启用二进制日志。每个从服务器从主服务器接收主服务器已经记录到其二进制日志的保存的更新。当一个从服务器连接主服务器时,它通知主服务器从服务器在转载 2016-11-09 22:27:07 · 529 阅读 · 0 评论 -
MYSQL主从同步故障一例及解决过程!
公司里有两个mysql服务器做主从同步,某天Nagios发来报警短信,mysqla is down...赶紧联系机房,机房的人反馈来的信息是 HARDWARE ERROR 后面信息省略,让机房记下错误信息后让他们帮忙重启下看是不是能正常起来,结果竟然正常起来了,赶紧导出所有数据。 问题又出现了,nagios 又报警,mysql_AB error,检查从库show slave s转载 2017-02-08 19:29:23 · 849 阅读 · 0 评论 -
MySQL查询缓存总结
可以通过下面的SQL查看当前查询缓存相关参数状态:SHOW VARIABLES LIKE '%query_cache%';输出结果类似下面: query_cache_type 查询缓存类型,有0、1、2三个取值。0则不使用查询缓存。1表示始终使用查询缓存。2表示按需使用查询缓存。 如果query_cache_ty转载 2015-07-05 19:45:12 · 5136 阅读 · 0 评论 -
mysql的分区技术详细介绍
原文:http://www.jb51.net/article/62290.htm一、概述当 MySQL的总记录数超过了100万后,会出现性能的大幅度下降吗?答案是肯定的,但是,性能下降>的比率不一而同,要看系统的架构、应用程序、还有>包括索引、服务器硬件等多种因素而定。当有网友问我这个问题的时候,我最常见的回答>就是:分表,可以根据id区间或者时间先后顺序等多种规则来分转载 2015-07-05 11:09:33 · 548 阅读 · 0 评论 -
mysql授权表
mysql授权表共有5个表:user、db、host、tables_priv和columns_priv。 授权表的内容有如下用途:user表user表列出可以连接服务器的用户及其口令,并且它指定他们有哪种全局(超级用户)权限。在user表启用的任何权限均是全局权限,并适用于所有数据库。例如,如果你启用了DELETE权限,在这里列出的用户可以从任何表中删除记录,所以在你这样做之前要认真考虑。 db表db表列出数据库,而用户有权限访问它们。在这里指定的权限适用于一个数据库中的所有表。 host表host表与db原创 2011-04-12 11:33:00 · 1003 阅读 · 0 评论 -
Linux下MySQL数据库二进制日志恢复方法
如果MySQL服务器启用了二进制日志,你可以使用mysqlbinlog工具来恢复从指定的时间点开始(例如,从你最后一次备份)直到现在或另一个指定的时间点的数据。“mysqlbinlog:用于处理二进制日志文件的实用工具”。要想从二进制日志恢复数据,你需要知道当前二进制日志文件的路径和文件名。一般可以从选项文件(即my.cnf or my.ini,取决于你的系统)中找到路径。如果未包含在转载 2012-03-22 11:25:26 · 840 阅读 · 0 评论 -
MYSQL explain 详解
explain显示了mysql如何使用索引来处理select语句以及连接表。可以帮助选择更好的索引和写出更优化的查询语句。先解析一条sql语句,看出现什么内容EXPLAINSELECTs.uid,s.username,s.name,f.email,f.mobile,f.phone,f.postalcode,f.addressFROM uchome_space ASs,uchom转载 2015-01-08 17:56:36 · 403 阅读 · 0 评论 -
如何优化MySQL insert性能
对于一些数据量较大的系统,面临的问题除了是查询效率低下,还有一个很重要的问题就是插入时间长。我们就有一个业务系统,每天的数据导入需要4-5个钟。这种费时的操作其实是很有风险的,假设程序出了问题,想重跑操作那是一件痛苦的事情。因此,提高大数据量系统的MySQL insert效率是很有必要的。 经过对MySQL的测试,发现一些可以提高insert效率的方法,供大家参考参考。1. 一条SQ转载 2015-04-19 23:09:50 · 584 阅读 · 0 评论 -
使用Mysql Merge存储引擎实现分表
对于数据量很大的一张表,i/o效率底下,分表势在必行! 使用程序分,对不同的查询,分配到不同的子表中,是个解决方案,但要改代码,对查询不透明。 好在mysql 有两个解决方案: Partition(分区,在MySQL 5.1.中实现) 和 Mysql Merge存储引擎。 本文讨论 Mysql Merge存储引擎。 CREATE TABLE t1 (转载 2015-07-08 13:58:00 · 2415 阅读 · 0 评论 -
30多条mysql数据库优化方法,千万级数据库记录查询轻松解决
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,Sql 代码 : select id from t where num is null;可以在 num 上设置默认值 0,确保表中 num 列没有 null 值,然后这样查转载 2015-07-02 23:39:26 · 329 阅读 · 0 评论 -
mysql分表与分区表
转自:http://blog.51yip.com/mysql/949.html一,什么是mysql分表,分区什么是分表,从表面意思上看呢,就是把一张表分成N多个小表,具体请看mysql分表的3种方法什么是分区,分区呢就是把一张表的数据分成N多个区块,这些区块可以在同一个磁盘上,也可以在不同的磁盘上一,先说一下为什么要分表当一张的数据达到几转载 2015-07-02 23:40:32 · 534 阅读 · 0 评论 -
mysql 表锁定,库锁定
今天在解决数据库同步异常的时候用到了flush tables with read lock 这个命令,于是顺便就学习了下锁表的相关知识。 1.FLUSH TABLES WITH READ LOCK 这个命令是全局读锁定,执行了命令之后所有库所有表都被锁定只读。一般都是用在数据库联机备份,这个时候数据库的写操作将被阻塞,读操作顺利进行。 解锁的语句也是转载 2017-02-08 19:27:58 · 7584 阅读 · 0 评论