我们都知道如何从Mysql获取我们需要的行(记录),读取数据,然后存取一些改动。很明显也很直接,在这个过程背后也没有什么拐弯抹角的。然而对于我们使用面对对象的程序设计(OOP)来管理我们数据库中的数据时,这个过程就需要大大改进一下了。这篇文章将对如何设计一个面对对象的方式来管理数据库的记录做一个简单的描述。你的数据当中的所有内部逻辑关系将被封装到一个非常条理的记录对象,这个对象能够提供专门(专一)的确认代码系统,转化以及数据处理。随着Zend Engine2 和PHP5的发布,PHP开发者将会拥有更强大的面对对象的工具来辅助工作,这将使这个过程(面对对象地管理数据库)更有吸引力。 以下列出了一些使用对象来描叙你...
本文从八个方面来讲解如何全新优化MySQL数据库性能。
1、选取最适用的字段属性 字串5
MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快。因此,在创建表的时候,为了获得更好的性能,我们可以将表中字段的宽度设得尽可能小。例如,在定义邮政编码这个字段时,如果将其设置为CHAR(255),显然给数据库增加了不必要的空间,甚至使用VARCHAR这种类型也是多余的,因为CHAR(6)就可以很好的完成任务了。同样的,如果可以的话,我们应该使用MEDIUMINT而不是BIGIN来定义整型字段。
另外一个提高效率的方法是在可能的情况下,应该尽量把字段设置为NO...
一、对于Windows主机
==============
假想环境:
MySQL 安装位置:C:MySQL
论坛数据库名称为:bbs
MySQL root 密码:123456
数据库备份目的地:D:db_backup
@echo off
C:MySQLbinmysqladmin -u root --password=123456 shutdown
C:MySQLbinmysqldump --opt -u root --password=123456 bbs > D:db_backupbbs.sql
C:MySQLbinmysqld-nt
将以上代码保存为backup_db.bat
然后使用Windows的“计划任务”定时执行该脚本即可。(例如:每天凌晨5点...
如何不使用phpMyAdmin来转移数据库?是不是听上去不可能的。不过如果借助与其他的一些工具,这是可以实现的。现在介绍的就是如何借助与一个第三方软件:MySQL-Front,在不使用phpMyAdmin的情况下就可以转移您的数据。您只需要跟随以下三个步骤就可以完成这个转移数据的复杂任务。1。在哪里下载这个软件?请下载这个叫做MySQL-Front的软件,并进行安装。下载地址:http://zsj.cz/mysqlfront/MySQL-Front_Setup.exe 或者 http://www.mysql-front.de/pub/MySQL-Front_Setup.exe (这个是官方站)安装过程就不详述了,另外请注意的是这个软件只能免费使用30天。不过好象有些中国网站可以下载已经被cra...
如果你是个赛车手并且按一下按钮就能够立即更换引擎而不需要把车开到车库里去换,那会是怎么感觉呢?MySQL数据库为开发人员所做的就好像是按按钮换引擎;它让你选择数据库引擎,并给你一条简单的途径来切换它。MySQL的自带引擎肯定是够用了,但是在有些情况下,其他的引擎可能要比手头所用更适合完成任务。如果愿意的话,你甚至可以使用MySQL++ API来创建自己的数据库引擎,就像打穿气缸装上自己的化油器。现在让我们来看看你该如何选择引擎,以及如何在可用引擎之间切换。
选择你的引擎你能用的数据库引擎取决于MySQL在安装的时候是如何被编译的。要添加一个新的引擎,就必须重新编译MySQL。仅仅为了添加一个特性而编译...
本文突出介绍了MySQL支持的很多重要的数据类型,并介绍如何使用。
数据库存储中的数据类型与大小各异。有些地方只存储数字类型,有些只存储文本类型,有些二者而兼之。而很多数据库支持各种专用类型:日期和时间类型,二进制字符类型以及布尔类型。
选择数据类型与数据相匹配是数据库设计中最为重要的部分,因为这种类型将会影响到RDBMS的效率与性能。所以,对RDBMS的数据类型选择应给予足够的重视。
这就是编写本文的主要目的。表A将列举了MySQL支持的绝大部分重要的数据类型,而MySQL是当前最为流行的免费RDBMS。文中还描述了何时与如何使用这些数据类型。这将有助于建立一个数据库的合理设计。
表 A
...
首先,为了使一个系统更快,最重要的部分就是基础设计,不过有些东西是现有情况下无法逾越的,比如说系统常见的瓶颈.我所能想到的:1:磁盘寻道能力,以高速硬盘(7200转/秒),理论上每秒寻道7200次.这是没有办法改变的,优化的方法是----用多个硬盘,或者把数据分散存储.2:硬盘的读写速度,这个速度非常的快(限于本人的知识所限,只知道在每秒几十甚至上百MB).这个更容易解决--可以从多个硬盘上并行读写.3:cpu.cpu处理内存中的数据,当有相对内存较小的表时,这是最常见的限制因素.4:内存的限制.当cpu需要超出适合cpu缓存的数据时,缓存的带宽就成了内存的一个瓶颈---不过现在内存大的惊人,一般不会出现这个问题.1:调节服务器参数用shell>mysqld-help这个命...
配置见证服务器
前面已经完成了镜像数据库的配置,并进行那个了故障转移测试。接下来将部署见证服务器,实现自动故障转移。
一、关于见证服务器
1、若要支持自动故障转移,必须在高安全性模式下配置数据库镜像会话,并且还要具有第三个服务器实例(也称为“见证服务器”)。见证服务器是 SQL Server 的可选实例,它能使高安全性模式会话中的镜像服务器识别出是否要启动自动故障转移。与这两个伙伴不同的是,见证服务器并不能用于数据库。见证服务器的唯一角色是支持自动故障转移。
2、为了给数据库设置见证服务器,数据库所有者为见证服务器的角色分配数据库引擎实例。见证服务器实例可以与主体服务器实例或镜像服务器...
配置镜像,实施手动故障转移
上一篇文章已经为配置镜像数据库做好了准备,接下来就要进入真正的配置阶段
一、设置安全性并启动数据库镜像会话
1、展开数据库,选择VirtualManagerDB,点击右键选择任务——镜像
2、点击配置安全性,点选是,包括见证服务器
3、去掉见证服务器,以后进行配置
4、设置主体服务器,填入端点名称为site1
5、添加镜像服务器,取端点名为site2
6、指定服务账户为域管理员账户(可以在域内事先配置)
7、创建成功,点击关闭
8、弹出对话框,选择不开始开始镜像
9、点选高性能模式的运行模式,点击开始镜像,查看状态显示已经同步
10、同步完成后,显示...
数据库准备
一、目标
利用Sql Server 2008 enterprise X64,建立异步(高性能)镜像数据库,同时建立见证服务器实现自动故障转移。
二、前提条件、限制和建议
1、伙伴双方(主体服务器和镜像服务器)及见证服务器必须使用相同版本的Sql Server
2、如使用见证服务器,择须确保其系统上安装 Sql Server 2005或更高版本
3、在镜像服务器上创建镜像数据库时,确保制定相同的数据库名称WITH NOREBOVORY来还原主题数据库备份。另外,还必须通过 WITH NORECOVERY 应用在该备份执行后创建的所有日志备份。如果数据库镜像已经停止,则必须将对主体数据库执行的所有后续日志备份应用到镜像数据库中,然后才可...
SET NOCOUNT ON
DECLARE @LOGICALFILENAME SYSNAME,
@MAXMINUTES INT,
@NEWSIZE INT
USE sq_goalercn ---要操作的数据库
SELECT @LOGICALFILENAME = 'sq_goalercn_LOG',---日志文件名
@MAXMINUTES = 10,---LIMIT ON TIME ALLOWED TO WRAP LOG.
@NEWSIZE = 10---你想设定的日志文件大小(M)
--SETUP /IN...
主键是数据库表的一个重要属性,建立主键可以避免表中存在完全相同的记录,也就是说主键在一张表中的记录值是唯一的。
建立主键有两种方法:一种是在数据库提供的GUI环境中建立,另一种是通过SQL语句执行建立,下面分别介绍。
1.在数据库提供的GUI环境中建立(以SQL7为例)。
输入表信息后按Ctrl键同时选中多行,然后点上面的主键按钮就行了。
2.通过SQL语句执行建立。又分两种,一是在建表语句中直接写,二是建表之后更改表结构。
在建表语句中直接写:
...
Microsoft SQL Server 2000的新特性之一就是支持XML,所以用户可以通过HTTP方式直接访问具备XML功能的SQL Server2000数据库。下面介绍实现方法。系统环境:Windows2000 Server(包含IIS)+ MS SQL Server2000数据库:SQL Server2000附带的经典数据库样本:NorthWind一、配置IIS和SQL Server virtual domains;1.新建文件目录打开Windows资源管理器,在Inetpubwwwroot下新建目录northwind:C:Inetpubwwwroot orthwind在northwind目录下再新建2个子目录:template和schema:C:Inetpubwwwroot wind emplate,用于放置XML模版;C...
对于服务器数据的备份是比较麻烦的事情,如果每天或者经常要手工去备份自然是很痛苦的事情。这里我介绍一种通过sql server的作业调度来建立自动备份的方法:
1、进入企业管理器中->管理->sql server代理->作业;
2、新建作业,作业名称随便取,例如:data备份,所有者选择sa,当然你也可以选择其他用户,前提是该用户有执行作业的权限;
3、点击步骤标签,进入步骤面板。新建步骤,步骤名可以随便填写,如步骤1,类型和数据库默认,不需要修改。命令中写入以下语句:
BACKUP DATABASE [数据库名] TO DISK = N'F:data数据库备份' ...
随着“金盾工程”建设的逐步深入和公安信息化的高速发展,公安计算机应用系统被广泛应用在各警种、各部门。与此同时,应用系统体系的核心、系统数据的存放地――数据库也随着实际应用而急剧膨胀,一些大规模的系统,如人口系统的数据甚至超过了1000万条,可谓海量。那么,如何实现快速地从这些超大容量的数据库中提取数据(查询)、分析、统计以及提取数据后进行数据分页已成为各地系统管理员和数据库管理员亟待解决的难题。 在以下的文章中,我将以“办公自动化”系统为例,探讨如何在有着1000万条数据的MS SQL SERVER数据库中实现快速的数据提取和数据分页。以下代码说明了我们实例中数据库的“红头文件”一表的部分数...
本人从事的工作是数据库管理员,要维护多台服务器中的数据库,经常把某台服务器中的某个数据库移动到另外一台服务器,对数据的移动有些心得体会,希望和大家共同交流。 1. 通过工具DTS的设计器进行导入或导出 DTS的设计器功能强大,支持多任务,也是可视化界面,容易操作,但知道的人一般不多,如果只是进行SQL Server数据库中部分表的移动,用这种方法最好,当然,也可以进行全部表的移动。在SQL Server Enterprise Manager中,展开服务器左边的+,选择数据库,右击,选择All tasks/Import Data...(或All tasks/Export Data...),进入向导模式,按提示一步一步...