文章分类 -  数据库技术

摘要:http://www.cnblogs.com/zping/archive/2008/08/11/1265472.html 阅读全文
posted @ 2014-05-15 17:51 bobsoft 阅读(144) 评论(0) 推荐(0)
摘要:三、意义一般mysql做主从,主要为了实现具体业务下的读写分离采用heartbeat实现主-主同步,即时切换,增加了写DB的可靠性。因为两台主主,在同样的环境下,可以实现带动更多的从DB。四、注意事项采用Heartbeat切换时,作为从的DB会停止服务,这时,只要把从的DB启动即可。从DB会从Master DB自动同步数据回来。可以考虑将此过程写成shell脚本 阅读全文
posted @ 2014-04-07 17:23 bobsoft 阅读(321) 评论(0) 推荐(0)
摘要:今天在操作系统是 winServer2008R2 下配置mysql-5.5.25-winx64 (免安装版),首先,将mysql-5.5.25-winx64.zip 解压缩到D:/mysql-5.5.25 目录下,然后根据网上相关资料,将my-large.ini(当然也可以视情况选择别的ini配置文件)复制后改名为my.ini,在此基础上,主要是在[mysqld]段中添加了:#系统基本目录basedir= D:/mysql-5.5.25#用户数据目录datadir= D:/mysql-5.5.25/data #字符集设置character-set-server = utf8在[client]段 阅读全文
posted @ 2014-02-19 21:44 bobsoft 阅读(360) 评论(0) 推荐(0)
摘要:mysql -uroot -p --default-character-set=utf8 db<db.sql 阅读全文
posted @ 2014-02-19 21:38 bobsoft 阅读(281) 评论(0) 推荐(0)
摘要:3.__ Key _________________________________________________________________4.Buffer used 292.00k of 8.00M %Used: 3.565.Current 1021.00 %Usage: 12.466.Write hit 100.00%7.Read hit 100.00%3-7行 索引报表,索引(key或者说index)对于mysql数据库,是最最最重要的。虽然报表不可能直接告诉你这个库的索引好还是不好,但它能告诉你这个索引缓冲区(key buffer)被利... 阅读全文
posted @ 2014-02-11 19:08 bobsoft 阅读(304) 评论(0) 推荐(0)
摘要:show slave status结果:Relay_Master_Log_File: mysql-bin.000042 /*在slave上执行master上一次SQL位置的所在文件*/Exec_Master_Log_Pos: 815573340 /*在slave上执行master上一次SQL位置*/show master status结果:file:mysql-bin.000043 /*master当前位置所在文件*/position:44566598 /*master当前位置*/ 解决思路1.stop slave--先停止复制 2.在master服务器上取二进制日志文件,并在slave上执行 阅读全文
posted @ 2013-01-05 17:08 bobsoft 阅读(208) 评论(0) 推荐(0)
摘要:查看缓存相关的命令1.show status like 'qc%';结果Qcache_free_blocks:目前还处于空闲状态的 Query Cache 中内存 Block 数目 Qcache_free_memory:目前还处于空闲状态的 Query Cache 内存总量 Qcache_hits:Query Cache 命中次数 Qcache_inserts:向 Query Cache 中插入新的 Query Cache 的次数,也就是没有命中的次数 Qcache_lowmem_prunes:当 Query Cache 内存容量不够,需要从中删除老的 Query Cache 阅读全文
posted @ 2012-11-24 15:45 bobsoft 阅读(299) 评论(0) 推荐(0)
摘要:Mysql复制(replication)是一个异步的复制,从一个Mysql instace(称之为Master)复制到另一个Mysql instance(称之Slave).实现整个复制操作主要由三个进程完成的,其中两个进程在Slave(Sql进程和IO进程),另外一个进程在 Master(IO进程)上. 要实施复制,首先必须打开Master端的binary log(bin-log)功能,否则无法实现.因为整个MySQL 复制过程实际上就是Slave从Master端获取该日志然后再在自己身上完全顺序的执行日志中所记录的各种操作。 复制的基本过程如下: 1)、Slave上面的IO进程连接上Mast 阅读全文
posted @ 2012-11-04 17:04 bobsoft 阅读(160) 评论(0) 推荐(0)
摘要:总结如下1.主 写172.19.1.372.从 读172.19.1.383.mysqlproxy172.19.1.364.client172.19.1.35一、主写与从读做好数据同步1.比如同步db->aaa2.比如table->new (id int,name varchar(20));二、配置mysqlproxy实现读写分离配置lua1.tar xvf lua-5.1.4.tar.gz -C /usr/src/2.cd /usr/src/lua-5.1.4/3.make linux4.make install5. export LUA_LIBS='-L/usr/loca 阅读全文
posted @ 2012-10-28 17:34 bobsoft 阅读(332) 评论(0) 推荐(0)
摘要:任何事务无论其隔离级别如何,都具有原子性。原子性和隔离级别是两码事。假定只有一种资源数据表上的“行“可以被锁定。锁只有共享锁和排他锁两种。锁的兼容性: SXS 10X 00事务的隔离级别:Read Uncommitted数据读取时不需要锁定Read Committed数据读取时需要共享锁定Repeatable Read数据读取时需要排他锁Serializable事务必须等同于串行执行注意无论任何时候更新行都必须要有排他锁。插入行不需要锁。在Read Committed隔离级别下,数据读取完毕后立即释放共享锁,而在Repeatable Read隔离级别下,事务保持共享锁直到整个事务结束。在SQL 阅读全文
posted @ 2012-10-07 22:34 bobsoft 阅读(222) 评论(0) 推荐(0)
摘要:SQL Server中的所有权链及其问题 没有多少朋友对所有权链真的理解的。我自己有时候经常回过来看看这些资料,觉得还是很有意思的。下面的内容摘自微软文档,介绍得比较好简而言之1. 如果在同一个数据库中,只要两个对象的所有者是一样的,那么他们之间的访问是不检查访问者身份的。例如一个视图和一个表是属于同一个所有者,那么只要用户有访问视图的权限,就等于拥有了访问表的权限,即便在表上面明确拒绝了用户的权限。你可能会奇怪了,我们不是经常讲“拒绝优先”吗?没错,拒绝优先是对的,但事情的关键主要在于这个时候,SQL Server根本就不检查权限了,当然就不存在任何问题。这个特性可能在规划安全时很有用2. 阅读全文
posted @ 2012-10-07 22:34 bobsoft 阅读(609) 评论(0) 推荐(0)
摘要:为提升数据库的并发访问数,可作“读写分离”,具体方法如下第一,准备阶段 检查SQL Server Agent服务是否启动 检查数据库服务器名是否与机器名一致,若不一致可执行如下代码if serverproperty('servername') @@servername begin declare @server sysname set @server = @@servername exec sp_dropserver @server = @server set @server = cast(serverproperty('servername') as sysn 阅读全文
posted @ 2012-10-07 22:33 bobsoft 阅读(647) 评论(0) 推荐(0)
摘要:对于大容量数据库表,且有一定业务规则的(比如有时间规则)可作如下分区,以提升综合性能第一,创建分区函数:根据业务规则创建(比如一个月分一个或几个月分一个)第二,创建文件组:根据规则,将每一条规则对应一个文件(物理文件,NDF)第三,创建建立分区架构,用来将概念上的分区和文件组(物理文件)关联起来第四,建立分区表以上做完,当执行INSERT时,分区表会根据分区架构将记录插入不同的NDF文件中;当执行SELECT时,分区表也会根据分区架构从不同的NDF中查寻。具体实现如下:CREATE PARTITION FUNCTION FiveYearDateRangePFN(datetime)ASRANGE 阅读全文
posted @ 2012-10-07 22:33 bobsoft 阅读(508) 评论(0) 推荐(0)
摘要:快照复制 1、概念 快照复制是完全按照数据和数据库对象出现时的状态来复制和分发它们的过程。快照复制不需要连续地监控数据变化,因为已发布数据的变化不被增量地传播到订阅服务器,而是周期性的被一次复制。 2、 适用情况 数据主要是静态的,比如将数据仓库复制到数据集市中 一段时间内允许有已过时的数据拷贝的情况 小批量数据 站点经常脱离连接,并且可接受高延迟 事务复制 1、概念 使用事务复制,初始快照数据将被传播到订阅服务器,因此该订阅服务器就具有了一个所谓的初始负载,这是可以开始工作的内容。当出版服务器上发生数据修改时,这些单独的事务会被及时捕获并复制到订阅服务器。并保留事务边界,当所有的改变都被传播 阅读全文
posted @ 2012-10-07 22:32 bobsoft 阅读(2137) 评论(0) 推荐(0)
摘要:满足海量存储需求和访问的面向文档的数据库:MongoDB,CouchDB MongoDB Nice, I like it very much. 面向文档的非关系数据库主要解决的问题不是高性能的并发读写,而是保证海量数据存储的同时,具有良好的查询性能。MongoDB是用C++开发的,而CouchDB则是Erlang开发的: 1、MongoDB MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似 json的bjson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大... 阅读全文
posted @ 2012-10-07 22:32 bobsoft 阅读(240) 评论(0) 推荐(0)
摘要:坚持了两周,终于在linux下把mysql集群数据库给架起来了!下面简单说明下集群数据库原理第一:集群数据库分MGM,NDBD,SQL 其中MGM是相当于“中央政府”,维持NDBD,SQL等服务器的之间的关系的 NDBD是数据存储的分布化,相当于把数据库文件复制了N次,同时保持各NDBD之间的一致性 SQL相当于N个客户端,供应用程序访问第二:这样做的好处 提高了系统的可靠性,其中任何一台NDBD,或SQL服务器挂掉,系统照常运行(当然至少要保证一台NDBD服务器与一台SQL服务器) 提高了系统的访问速度,此架构相当于把数据库存储与查询的压力分解到N台机器上 系统架构的性价比提高了,可以把N台 阅读全文
posted @ 2012-10-07 22:32 bobsoft 阅读(114) 评论(0) 推荐(0)
摘要:1、防火墙相关service iptables status 查看iptables状态service iptables restart 服务重启service iptables stop 服务禁用 2、/etc/my.cnf 相关[mysqld] default-character-set=utf8 #修改bind-address,指定为本机实际IP地址 bind-address = 本机地址 0.0.0.0 代表所有都可以访问#指定运行mysql进程的用户 3、进入mysql 给相关的用户权限即可 阅读全文
posted @ 2012-10-07 22:31 bobsoft 阅读(148) 评论(0) 推荐(0)
摘要:经过一个多月的测试MYSQL的双机同步数据还是很不错的。在家庭ADSL的4M的带宽下,有10个人在应用此网络,MYSQL数据同步还是照样正常,我想在正常的平台环境肯定更即时,效率更高!但同时需要注意思如下问题1.max_allowed_packet设置主从要一样,为什么要一样?原因如下:如果主服务器设置为10M,从服务器设置为5M,如果在主服务器上导入一个7M的数据包,那么同步机制就会出问题,因为从服务器最大为5M2.slave_compressed_protocol=true设置3.replicate-do-db最好设置只要同步的数据库名4.set global sql_slave_skip 阅读全文
posted @ 2012-10-07 22:31 bobsoft 阅读(229) 评论(0) 推荐(0)
摘要:最近把MYSQL集群给研究了下,并做了一个测试,且成功了!现在总结如下:一、规划好节点MGM:192.168.79.135NDB1:192.168.1.79.136NDB2:192.168.1.79.139SQL1:192.168.1.79.137SQL2:192.168.1.79.138二、基础环境如下Red Hat Enterprise Linux Server release 5.4MGM包括:MySQL-Cluster-gpl-client-7.1.15a-1.rhel5.i386.rpm MySQL-Cluster-gpl-management-7.1.15a-1.rhel5.i38 阅读全文
posted @ 2012-10-07 22:31 bobsoft 阅读(313) 评论(0) 推荐(0)
摘要:悲观锁:假定会发生并发冲突,屏蔽一切可能违反数据完整性的操作,这样保证了数据的完整性,同时防止读脏,独占时间长Read锁:当前会话read时,另一会话只能读,不能写Write锁:当前会话write时,另一会话所有操作等待乐观锁:假设不会发生并发冲突,只在提交操作时检查是否违反数据完整性,保证了数据的完整性,但不能防止读脏,并发度高“ 提交版本必须大于记录当前版本才能执行更新 “ 的乐观锁策略 阅读全文
posted @ 2012-10-07 22:30 bobsoft 阅读(144) 评论(0) 推荐(0)