当前位置:首页 > 香港服务器 > 正文

colo香港服务器(香港colo机房)

今天给各位分享colo香港服务器的知识,其中也会对香港colo机房进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

怎样打国际长途最便宜,用什么方法?怎么收费?

1、买17910卡可以打,这是比较便宜的一种拨打方式,另外也可以买193卡晚上10点以后打比较便宜,这两种卡在当地卖通信器材的街上都有卖的,这些卡都是可以打折卖的,折数还相当低!这样收费就可以按国际IP的资费加市话费来收,国际费用是从你购买的卡中扣费。

2、上网国际聊天当然用MSN。

或者打网络IP电话

网络电话和目前市场上卖的IP电话卡的工作方式相像。简单说明一下工作步骤。

例:你在中国使用网络电话与美国通话的过程

1、你的电脑将你的声音和你拨的电话号码通过互联网发送到服务器A上(这个步骤是不花钱的)。

2、服务器A根据你拨的电话号码再将你的声音通过互联网发送到你所拨的国家所在地的服务器B上(这个步骤同样也是免费的)

3、服务器B根据你拨的电话号码再将你的声音通过互联网发送到你所拨的所在州的服务器C上(这个步骤同样也是免费的)

4、服务器C将你的声音还原并通过当地的电话网传递到对方的电话上。(这个只需要支付美国州内通话费)

服务器A、B、C都是提供网络电话服务公司的服务器。

所以0.15分每分钟时可以实现的。

另:你选择网络电话的时候尽量选择服务器A在中国的。这样通话效果会比较好。

skype听说效果还不错,但是话费高,长途0。24/分钟。现在IC卡也推出IP电话了,0,30/分钟,算上打折售卡,实际是0,21/分钟。而且效果还好,虽然有些网络电话话费是0,15/分钟,但是效果普遍不理想,你是选择效果好的0,21/分钟呢还是选择效果不好的0,15/分钟?呵呵~自己选吧!

另外---

您还在为国内长途费用高于0.15元/分而烦恼吗?您还在为同出国在外的亲朋联系的高额国际长途费用而苦闷吗?呵呵,如果是这样的话,告诉您个好消息,铁通公司新推出的NP自由通业务为您解决了这个问题!国内长途只收0.15元/分,国际长途按不同的国家收费:美国0.38元/分、香港0.3元/分、加拿大0.355元/分、澳大利亚(固)0.465元/分、韩国0.465元/分、台湾0.465元/分、新西兰0.52元/分、日本0.565元/分、德国0.465元/分、英国0.465元/分、法国0.52元/分(只写了些主要国家的收费标准,其他国家的请打联系电话咨询)。

铁通公司的NP自由通是专门为有驻外分支机构、分公司或海外亲朋的单位或个人提供的整体解决方案。它具有交费低、安装使用方便、点点之间的通讯免费、企业之间全球组网免费通讯等优点。是国内已知的费用最低的通讯方式。只要您的单位或住所接有宽带,就可以使用些业务,而且此业务不仅能打,而且提供有铁通公司的一个固定电话号码,也可以接听,不同于以往的IP电话或虚拟号码的电话,计费准确,在网上直接可以查询话费,安全可靠。

此业务的使用需要宽带支持,有宽带的客户只需要一个转接器,就可以了,一个转接器只需要598元,投入低,而回报大家可以算一下,如果按网通或是电信的计费标准,以国内的几个主要城市的计费标准来说:

北京网通的通话费:国内长途通话费 0.07元 / 6秒钟 0:00—7:00(不分工作日和节假日) 6折(具体费率取为0.04元/6秒钟) 国际长途通话费 0.80元/6秒钟 日本、美国、新加坡、澳大利亚、新西兰、法国、英国、意大利、泰国、马来西亚、德国、加拿大、菲律宾、印度尼西亚、韩国 0:00——7:00(不分工作日和节假日) 6折 北京至港澳台电话 0.20元/6秒钟;

天津网通的通话费:国内长途直拨电话以6秒钟为一个计费单位,不足6秒按6秒计算。7:00——22:00 0.07元/6秒、22:00——次日7:00 0.04元/6秒,国际长途直拔:港、澳、台地区电话 全天 每6秒0.20元 国际电话 7:00——22:00 每6秒0.80元 22:00—-次日7:00 优惠受话国家:每6秒0.48元,其余国家:每6秒0.80元;

上海网通的通话费:国内呼出国内、国际长途:通话类别 网通IP长途电话资费 国际长途电话 至美国、加拿大 2.4元/分钟 国际长途电话 至其他国际地区 3.2元/分钟 内地至港、澳、台 1.5元/分钟 国内长途电话 0.3元/分钟 注:固定电话用户除需支付IP话费外,还需向当地电信公司支付本地市话。移动用户还需要向当地中国移动通信公司支付本地移动通话费。

广东电信的通话费:国内长途不分省内、省际一律按0.07元/6秒(不足6秒按6秒计)。国际及港澳台电话计费单元为6秒,收费标准为:国际电话不区分被叫地点,每6秒钟0.80元,港澳台电话不区分广东省和内地呼叫,每6秒钟0.20元。优惠办法:国际电话的优惠不分工作日和节假日,每天0:00至7:00,优惠幅度为6折,具体费率取为0.48元/6秒。优惠的受话国家有日本、美国、新加坡、澳大利亚、新西兰、法国、英国、意大利、泰国、马来西亚、德国、加拿大、菲律宾、印度尼西亚、韩国。其他国家和地区(含港、澳、台)不再进行分时段优惠。

以上是国内几个较大的省市的网通或电信公司的收费标准,通过比较,您能发现,铁通公司的NP自由通收费是最低的,尤其是国际长途的收费。如果您个人或您所在的公司经常需要国内、国际长途业务,并且费用比铁通公司的NP自由通的费用要高,您都可以打电话联系我,我可以为您详细说明一下,也可以登录铁通公司的网站查看一下。

联系电话:13589278654bbs.0060.org[

联系人:李先生

铁通网站:

请教MCE多头显示问题

多屏幕显示卡是一种特殊的显示卡,叫法不一,如:多屏卡(Multi screen)、多屏幕显示卡、多头卡(Multi head)、多头显示卡、等。如果您的工作是处理大量的信息,如图像、文字、视频等等。您就不得不在各种应用程序的频繁切换中忙碌。即使25英寸的显示器也不能满足您的要求。您是不是想拥有一个更大的屏幕?或者有几个显示器供您同时使用,您希望每一个显示器上都能够显示您的电脑中不同的应用程序窗口或者拼接显示同一内容,那么您就需要一块多屏显示卡来帮助您。

多屏显示卡可以使一台PC机支持多台显示器/电视;在不同的屏幕上显示各自不同的画面,几台显示器/电视机又可共同组合一幅大画面;鼠标可在多个屏幕之间任意漫游,可平滑的将光标由一个屏幕移到任意另一个显示器上,也可将任意应用程序,由占用一个屏幕扩展至占用两个甚至更多个屏幕,同时也可将不同应用程序在不同屏幕之间任意切换。另外可在一台计算机上同时安装多块卡,屏幕数量任意选择,屏幕方式任意排列;这将给你更多的显示信息,而且更舒适,更便捷。

多屏卡可以使您需要的各种软件、信息在各自的屏幕上同时最大化显示。比如:处理字表,您可以直接把这个字表(word、EXCELL)文件从WINDOWS的资源管理器拖到字表处理软件。或者在两个屏上分别最大化打开WEB浏览器和电子邮件管理程序。多屏幕显示卡的优点,不仅仅在于可以加大加宽工作窗口尺寸,更重要的是通过一台PC机而实现更多的不同的工作窗口,为你的工作提供了广阔的领域。

多屏显示卡可以将一幅画面扩展至多台显示器上显示,从而创建一个大的虚拟显示屏,可以非常方便地将多个画面(窗口)放置于不同的屏幕上,或用多个屏幕共同显示一幅大的画面。一块多屏显示卡一般支持双屏或四屏显示,当需要更多屏显示时可以通过增加显示卡来实现。

多屏卡支持的屏数

支持的屏数是多屏显示卡最重要的技术指标。目前较为常见的多屏幕显示卡能够支持的屏数为2屏、4屏、8屏,基本上都是2的方数。理论上系统支持的屏数是可以通过加插多屏幕显示卡进行扩展的,同时也要考虑您的计算机主板上的PCI插槽数。如果您需要显示的屏数较多,但是PCI的插槽又较少的话,那么您在选购时就应该合理的计算,选择支持屏数较多的多屏幕显示卡。

多屏卡采用何种显示芯片组

和普通的显卡一样,多屏显示卡的性能很大的程度上也取决于显示芯片组的性能。它采用多个芯片组叠加的方式来支持多屏显示的功能

前,一般多屏幕显示卡的驱动程序有两种模式,一是直接利用Widows98/2000/XP等操作系统支持多屏显示的功能。在这种驱动模式下,每一个输出口可以设置不同的分辨率,比较适用于需要多任务多显示窗口的领域,如AutoCAD另一种显示模式叫OVERLAY显示模式,在这种模式下更容易用多个屏幕拼接显示一个显示窗口或应用程序,如屏幕墙拼接、工业过程控制组态软件显示等。设计,网页设计,文字排版,证券股票显示等领域。

无论在哪种显示驱动模式下显示屏幕在应用中排列的方式不可能是一成不变的,那么如何的进行切换和调整的操作方法是否便捷也就变得非常的重要。不同厂商的产品都有不同的设计,如Appian 公司提供的HYDRAVISION多屏幕控制软件能使客户便捷地控制多窗口多任务的显示。

多屏显示卡除了支持常规的显示器以外,还可能需要支持电视机和其它的一些视频输出设备(如台湾Video-UFO显示卡,带有视频输出口),因此它支持输入输出的接口种类也是非常重要的。常见的接口有VGA接口、DVI接口,视频接口。

多屏卡拓展功能

一些多屏显示卡为了增强功能还有许多的附件,这些附件可以使功能更加的强大。因此在选购时应该根据自己的实际情况来选择。多屏卡添加NTSC/PAL/SECAM 视频采集芯片,如Appian公司的Jpro四屏卡和COLOGRAPHIC公司的PROMEDIA四屏卡,都有视频采集芯片。这个选件可使多屏卡产品播放外接的视频源信号,并且在多屏卡提供的播放软件下在显示器上以窗口的形式播放。

多屏卡对3D、OpenGL等技术的支持

目前,电脑的应用已经进入了3D的时代,在普通的显示卡中3D功能已经是非常的普通的了。但是多屏幕显示卡的2D卡和3D卡是有所区分的,一些不带3D功能的产品是无法实现3D显示功能的。因此对于一些需要进行3D显示的用户来说,必须选购带3D显示功能的多屏卡,当然价格也会贵上不少。

我要考VF二级,牛人过来帮一下

你报考学习班了吗?学习班有内部资料,我也报考VF二级了,而且通过了,你到淘宝网看看吧,以下是我在老师那考的一步分资料。

1、 备注型字段与字符型字段有什么区别?

字符型(Character)数据:是描述不具有计算能力的文字数据类型。字符型数据由汉字、英文字母、数字字符、空格及其他专用字符组成,长度范围是0--254个字符。使用时必须用双引号("")或单引号('')括起来,一个汉字相当于两个字符。

备注型(Memo)数据:用于表示较长的字符型数据。备注型数据没有数据长度限制,仅受限于现有的磁盘空间。它只用于数据表中的字段类型的定义,其字段长度固定为4个字符,而实际数据被存放在与数据表文件同名的备注文件中(.fpt),长度根据数据的内容而定。

2、 信息和数据有什么区别?

信息(Information)是客观事物属性的反映,并对人类的客观行为产生影响。

数据(Data)是反映客观事物属性的记录,是信息的载体。如数值、文字、声音、图形、图像等,是信息的具体表现形式。

3、 数据处理 的目的是什么?

数据处理也称为信息处理。所谓数据处理,实际上就是利用计算机对各种类型的数据进行处理。数据处理包括对数据的采集、整理、存储、分类、排序、检索、维护、加工、统计和传输等一系列操作过程。

数据处理的目的是从大量的、原始的数据中获得人们所需要的资料并提取有用的数据成份,作为行为和决策的依据。

4、 什么是数据模型?

数据模型是指反映客观事物及客观事物间联系的数据组织的结构和形式。

5、 关系模型有哪些主要的特点?

关系模型的主要特点:

(1) 关系中每一数据项是独立的,是最基本的数据单位;

(2) 每一竖列称为一个字段,数据项是同属性的,列数根据需要而设,且各列的顺序是任意的; (3) 每一横行称为一个记录,由一个事物的诸多属性构成,且各行的顺序可以是任意的; (4) 一个关系是一张二维表,不允许有相同的字段名,也不允许有相同的记录行。

6、 什么是数据库?

所谓数据库,就是以一定的组织方式将相关的数据组织在一起,存放在计算机外存储器上形成的,能为多个用户共享的,与应用程序彼此独立的一组相关数据的集合。

7、 什么是关系数据库?

关系数据库(Relational Data Base)是由若干张二维表组成的。一张二维表称为一个关系或一个数据表

8、 数据库应用系统的主要组成部分是什么?

数据库应用系统是由计算机硬件、软件、数据和人员所组成的,为用户提供信息服务的系统。

9、 内存变量、数组变量、字段变量有何区别?

内存变量的类型有数值型、浮点型、字符型、逻辑型、日期型和日期时间型6种,它的定义是通过赋值语句来进行的。 如:a="abcd"

数组变量简称数组 数组是一组有序的变量的集合。每一个变量存放一个数据,每一个数组存放一组数据。每一个数组都有一个名字,称为数组名。数组中的每一个变量称为数组元素,每一个数组元素的名子由数组名和下标组成,下标即数组元素在数组中的位置。数组分为一维数组、二维数组 通过Dimension或Declare定义

字段变量:指数据表中已定义的任意一个字段。 字段变量的数据类型有数值型、浮点型、货币型、整型、双精度型、字符型、逻辑型、日期型、日期时间型、备注型和通用型等。

10、 利用表设计器创建表与用表向导创建表有什么区别?????????????????

11、 删除表中的数据有几种方法,有什么不同?

逻辑删除表中的记录:Delete [范围] For [条件表达式]

物理删除表中的记录Pack 物理删除表中所有逻辑删除的记录

Zap 物理删除表中所有的记录

12、 简述数据表的组成?

一个数据表由数据表名、数据表的结构、数据表的记录三要素构成。

13、 什么是索引?

索引是使表中的记录按照一定的顺序排列的技术,是一个由索引序号和表的记录号组成的列表。

14、 索引类型有几种,各有什么特点?

1.主索引(Primary Index)

索引表达式的值不能重复。主索引只用于数据库表,且一张表只能创建一个主索引,自由表不能创建主索引。

2.候选索引(Candidate Index)

索引表达式的值不能重复。一张表可以建立多个侯选索引,侯选索引可用于数据库表和自由表

3.普通索引(Regular Index)

索引表达式的值可以出现重复,且在索引表中,具有重复值的记录也被重复存贮。

4.唯一索引(Unique Index)

索引表达式的值可以出现重复,但在索引表中,只存贮其中的第一个。

15、 为什么要建立索引,意义是什么?

索引是使

有序,有序就可进行快速查询。

16、 如何使用索引?

按索引字段,索引表达式排序

SET ORDER TO [TAG索引标识名]

17、 在数据库操作环境下对数据表进行操作有什么好处?

只有把有关系的表存放在同一个数据库中,确定它们的关联关系,表中的数据才能被更充分的利用。

18、 数据库中的数据表间有几种关联关系,建立这些关联的依据是什么?

一对一

一对多 多对一;建立数据库文件中的表间关联,一是要建立关联的表具有相同属性的字段;二是每个表都要以该字段建立索引。

视图是从一个或多个数据表中导出的"表"。

查询可以从单个或多个表中提取有用的数据。利用查询可以实现对数据库中数据的浏览、筛选、排序、检索、统计及加工等操作;利用查询可以为其他数据库提供新的数据表

19、 视图和查询有什么不同?各有什么特点?

利用视图可以更新数据表中的数据。因为视图可以限定数据表中数据的使用范围,因此,也就限定了可更新的数据,数据表中其他的数据就不会被破坏,由此可以提高数据维护的安全性。

使用查询和使用视图一样,比使用数据表和数据库更方便、快捷和安全。

视图和查询相比,视图比查询多了一个更新功能,但是查询的输出格式多样化。

20、 项目管理吕是什么?使用它有什么好处?

项目管理器是按一定的顺序和逻辑关系,对数据库应用系统的文件进行有效组织的工具。使用项目管理器可以用最简单可视化的方法对数据表和数据库进行管理,在进行应用程序开发时,可以有效地组织数据表、表单、数据库、菜单、类、程序和其他文件,并将它们编译成可独立运行的.APP或.EXE文件。

21、 什么是类?什么是对象?

所谓类(Class),就是具有共同属性和行为特征的对象的集合与抽象。

对象(Object)是反映客观事物属性及行为特征的描述。每个对象都具有描述其特征的属性(用数据来表示),以及附属于它的行为(用代码来实现,称为对象的"方法")

22、 类与对象的根本区别是什么?

类是对象的抽象,对象是类的实例。类是不能直接被引用的,必须将类定义成对象方可使用,将类转换成对象。

23、 事件与方法有何不同?各自有什么特征?

常用事件:单击(click)、鼠标按键(mousedown)、激活事件(activate)、计时器(timer)

常用方法:设置焦点(setfocus)、刷新(refresh)、释放(release)、移动(move)、重置(reset)、显示(show)

24、 表单设计有几种方法,各自有什么特点?

用菜单方式,命令方式,表单向导创建表单 除使用表单设计器创建新的表单外,还可以使用表单向导创建新的表单,不过由表单向导创建的只能是数据表单。

简述“文本框”与“标签”控件的作用?

"文本框"控件主要用于表中非备注型和通用型字段值的输入、输出,以及内存变量赋值和输出等操作

标签控件

"标签"控件能按一定格式在表单上显示文本信息,用来显示表单中各种说明和提示信息。一旦"标签"控件的属性、事件和方法被定义,输出信息将根据这些定义所指定的格式输出。

25、 简述“文本框”与“标签”控件的主要区别。

"文本框"控件与"标签"控件最主要的区别在于它们使用的数据源(controlsource)是不同的。

"标签"控件的数据源来自于其"Caption"属性,"文本框"控件的数据源来自于其"Control Source"属性,可以是表中的非备注型、通用型字段和内存变量。

"文本框"控件的属性主要包括:"文本框"的大小,"文本框"中输入、输出信息字体的大小、风格和颜色等。

26、 表单控件的属性如何定义?有几种方法?

表单常用属性:autocenter、 backcolor、 caption、 height、 maxbutton、 width、picture

利用属性窗口设置对象属性 利用代码窗口编辑事件过程 利用布局工具栏排列控件

27、 什么是当前记录?它在表操作中有什么作用?

当前操作的记录,称为当前记录,在系统内部,有一个记录指针始终指向当前记录

, 当表打开时,当前记录为第一个记录,即记录指针指向第一个记录。表文件一旦打开,表中的记录指针可以移动的,数据表中记录的定位即移动记录指针,实质上就是确定哪一个记录为当前记录。

28、 逻辑删除记录和物理删除记录有什么不同?

逻辑删除就是给暂时不使用的记录加一个删除标记。另外,对需要彻底删除的记录,也必须要先做逻辑删除后再做物理删除。

物理删除就是把无效的记录彻底从磁盘中删除掉。若要想彻底删除表中部分无效的数据,必须先做逻辑删除后再做物理删除,若要想彻底删除表中全部无效的数据,也可直接做物理删除。

29、 过程式程序的基本结构是什么?

Visual FoxPro不仅支持传统的过程式程序设计技术,还支持面向对象程序设计技术,并在程序语言方面作了强有力的扩充。

过程式编程在设计程序时,必须考虑程序代码的全部流程,而面向对象编程在设计程序时,考虑的则是如何创建对象以及创建什么样的对象。

面向对象编程是对过程式编程思想的变革,它引入了许多新的概念,提出了比过程式编程语言更高级的面向对象编程的语言,这些概念和语言使得开发应用程序变得更容易,耗时更少、效率更高。

MySQL的应用

与其他的大型数据库例如Oracle、DB2、SQL Server等相比,MySQL自有它的不足之处,如规模小、功能有限(MySQL Cluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。

目前Internet上流行的网站构架方式是LAMP(Linux+Apache+MySQL+PHP),即使用Linux作为操作系统,Apache作为Web服务器,MySQL作为数据库,PHP作为服务器端脚本解释器。由于这四个软件都是遵循GPL的开放源码软件,因此使用这种方式不用花一分钱就可以建立起一个稳定、免费的网站系统。

MySQL管理

可以使用命令行工具管理MySQL数据库(命令mysql 和 mysqladmin),也可以从MySQL的网站下载图形管理工具MySQL Administrator和MySQL Query Browser。

phpMyAdmin是由php写成的MySQL资料库系统管理程式,让管理者可用Web介面管理MySQL资料库。

phpMyBackupPro也是由PHP写成的,可以透过Web介面创建和管理数据库。它可以创建伪cronjobs,可以用来自动在某个时间或周期备份MySQL 数据库。

另外,还有其他的GUI管理工具,例如早先的mysql-front 以及 ems mysql manager,navicat 等等。

Mysql存储引擎

MyISAM Mysql的默认数据库,最为常用。拥有较高的插入,查询速度,但不支持事务

InnoDB 事务型数据库的首选引擎,支持ACID事务,支持行级锁定

BDB 源自Berkeley DB,事务型数据库的另一种选择,支持COMMIT和ROLLBACK等其他事务特性

Memory 所有数据置于内存的存储引擎,拥有极高的插入,更新和查询效率。但是会占用和数据量成正比的内存空间。并且其内容会在Mysql重新启动时丢失

Merge 将一定数量的MyISAM表联合而成一个整体,在超大规模数据存储时很有用

Archive 非常适合存储大量的独立的,作为历史记录的数据。因为它们不经常被读取。Archive拥有高效的插入速度,但其对查询的支持相对较差

Federated 将不同的Mysql服务器联合起来,逻辑上组成一个完整的数据库。非常适合分布式应用

Cluster/NDB 高冗余的存储引擎,用多台数据机器联合提供服务以提高整体性能和安全性。适合数据量大,安全和性能要求高的应用

CSV 逻辑上由逗号分割数据的存储引擎

BlackHole 黑洞引擎,写入的任何数据都会消失,一般用于记录binlog做复制的中继

另外,Mysql的存储引擎接口定义良好。有兴趣的开发者通过阅读文档编写自己的存储引擎。

Mysql最常见的应用架构

单点(Single),适合小规模应用

复制(Replication),适合中小规模应用

集群(Cluster),适合大规模应用

mysql历史版本

MySQL公司目前在同时开发两个版本的软件,4.1版以及5.0版。4.1版本的代码已经发布并有望在8个月后公布最终代码。而5.0版本的最后产品将在6个月后发布。

MySQL4.1版本中增加了不少新的性能,包括对主键的更高速度的缓存,对子查询的更好的支持,以及应网络约会网站所要求的,基于地理信息的查询。

而其同步开发的5.0版本则把目标对准了企业用户,对于4.1版本中的所有新特性,5.0版本悉数收入囊中,并且独具以下特点:对外键的良好支持;系统自动报错机制以及对存储过程的充分支持。

Mysql中文视频教学

左光华的mysql网络数据库开发教学视频

Mysql6.0的alpha版于2007年初发布,新版增加了对falcon存储引擎的支持。Falcon是Mysql社区自主开发的引擎,支持ACID特性事务,支持行锁,拥有高性能的并发性。Mysql AB公司想用Falcon替代已经非常流行的InnoDB引擎,因为拥有后者技术的InnoBase已经被竞争对手Oracle所收购。

2008年1月16日,Sun Microsystems宣布收购MySQL AB,出价约10亿美元现金包括期权。

MySQL的基本命令

[ ]中的内容为可选项

--创建数据库

mysql create database 数据库名称

--创建表

mysql create table 表名 (

列的名字(id)类型(int(4))primary key(定义主键) auto_increment(描述 自增),

……,

);

--查看所有数据库

mysql show databases 数据库名称;

--使用某个数据库

mysql use database 数据库名称;

--查看所使用数据库下所有的表

mysql show tables;

--显示表的属性结构

mysql desc 表名;

--选择表中数据的显示

--* 代表选择所有列 ,

mysql select * from 表名 where id=?[and name=?] [or name=?];

mysql select id,name from 表名order by 某一列的名称 desc(降序,asc为升序)

--删除表中的数据

mysql delete from table where id=?[or name=? (and name=?)];

--删除表

mysql drop table;

--删除数据库

mysql drop database;

索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针。

注:[1]索引不是万能的!索引可以加快数据检索操作,但会使数据修改操作变慢。每修改数据记录,索引就必须刷新一次。为了在某种程序上弥补这一缺陷,许多SQL命令都有一个DELAY_KEY_WRITE项。这个选项的作用是暂时制止 MySQL在该命令每插入一条新记录和每修改一条现有之后立刻对索引进行刷新,对索引的刷新将等到全部记录插入/修改完毕之后再进行。在需要把许多新记录插入某个数据表的场合,DELAY_KEY_WRITE选项的作用将非常明显。[2]另外,索引还会在硬盘上占用相当大的空间。因此应该只为最经常查询和最经常排序的数据列建立索引。注意,如果某个数据列包含许多重复的内容,为它建立索引就没有太大的实际效果。

从理论上讲,完全可以为数据表里的每个字段分别建一个索引,但MySQL把同一个数据表里的索引总数限制为16个。

1. InnoDB数据表的索引

与MyISAM数据表相比,索引对InnoDB数据的重要性要大得多。在 InnoDB数据表上,索引对InnoDB数据表的重要性要在得多。在InnoDB数据表上,索引不仅会在搜索数据记录时发挥作用,还是数据行级锁定机制的苊、基础。"数据行级锁定"的意思是指在事务操作的执行过程中锁定正在被处理的个别记录,不让其他用户进行访问。这种锁定将影响到(但不限于)SELECT...LOCK IN SHARE MODE、SELECT...FOR UPDATE命令以及INSERT、UPDATE和DELETE命令。

出于效率方面的考虑,InnoDB数据表的数据行级锁定实际发生在它们的索引上,而不是数据表自身上。显然,数据行级锁定机制只有在有关的数据表有一个合适的索引可供锁定的时候才能发挥效力。

2. 限制

如果WEHERE子句的查询条件里有不等号(WHERE coloum != ...),MySQL将无法使用索引。

类似地,如果WHERE子句的查询条件里使用了函数(WHERE DAY(column) = ...),MySQL也将无法使用索引。

在JOIN操作中(需要从多个数据表提取数据时),MySQL只有在主键和外键的数据类型相同时才能使用索引。

如果WHERE子句的查询条件里使用比较操作符LIKE和REGEXP,MySQL 只有在搜索模板的第一个字符不是通配符的情况下才能使用索引。比如说,如果查询条件是LIKE 'abc%',MySQL将使用索引;如果查询条件是LIKE '%abc',MySQL将不使用索引。

在ORDER BY操作中,MySQL只有在排序条件不是一个查询条件表达式的情况下才使用索引。(虽然如此,在涉及多个数据表查询里,即使有索引可用,那些索引在加快ORDER BY方面也没什么作用)

如果某个数据列里包含许多重复的值,就算为它建立了索引也不会有很好的效果。比如说,如果某个数据列里包含的净是些诸如"0/1"或"Y/N"等值,就没有必要为它创建一个索引。

普通索引、唯一索引和主索引

1. 普通索引

普通索引(由关键字KEY或INDEX定义的索引)的唯一任务是加快对数据的访问速度。因此,应该只为那些最经常出现在查询条件(WHERE column = ...)或排序条件(ORDER BY column)中的数据列创建索引。只要有可能,就应该选择一个数据最整齐、最紧凑的数据列(如一个整数类型的数据列)来创建索引。

2. 唯一索引

普通索引允许被索引的数据列包含重复的值。比如说,因为人有可能同名,所以同一个姓名在同一个"员工个人资料"数据表里可能出现两次或更多次。

如果能确定某个数据列将只包含彼此各不相同的值,在为这个数据列创建索引的时候就应该用关键字UNIQUE把它定义为一个唯一索引。这么做的好处:一是简化了MySQL对这个索引的管理工作,这个索引也因此而变得更有效率;二是 MySQL会在有新记录插入数据表时,自动检查新记录的这个字段的值是否已经在某个记录的这个字段里出现过了;如果是,MySQL将拒绝插入那条新记录。也就是说,唯一索引可以保证数据记录的唯一性。事实上,在许多场合,人们创建唯一索引的目的往往不是为了提高访问速度,而只是为了避免数据出现重复。

3. 主索引

在前面已经反复多次强调过:必须为主键字段创建一个索引,这个索引就是所谓的"主索引"。主索引与唯一索引的唯一区别是:前者在定义时使用的关键字是PRIMARY而不是UNIQUE。

4. 外键索引

如果为某个外键字段定义了一个外键约束条件,MySQL就会定义一个内部索引来帮助自己以最有效率的方式去管理和使用外键约束条件。

5. 复合索引

索引可以覆盖多个数据列,如像INDEX(columnA, columnB)索引。这种索引的特点是MySQL可以有选择地使用一个这样的索引。如果查询操作只需要用到columnA数据列上的一个索引,就可以使用复合索引INDEX(columnA, columnB)。不过,这种用法仅适用于在复合索引中排列在前的数据列组合。比如说,INDEX(A, B, C)可以当做A或(A, B)的索引来使用,但不能当做B、C或(B, C)的索引来使用。

6. 索引的长度

在为CHAR和VARCHAR类型的数据列定义索引时,可以把索引的长度限制为一个给定的字符个数(这个数字必须小于这个字段所允许的最大字符个数)。这么做的好处是可以生成一个尺寸比较小、检索速度却比较快的索引文件。在绝大多数应用里,数据库中的字符串数据大都以各种各样的名字为主,把索引的长度设置为10~15个字符已经足以把搜索范围缩小到很少的几条数据记录了。

在为BLOB和TEXT类型的数据列创建索引时,必须对索引的长度做出限制;MySQL所允许的最大索引jlkjljkjlj全文索引

文本字段上的普通索引只能加快对出现在字段内容最前面的字符串(也就是字段内容开头的字符)进行检索操作。如果字段里存放的是由几个、甚至是多个单词构成的较大段文字,普通索引就没什么作用了。这种检索往往以LIKE %word%的形式出现,这对MySQL来说很复杂,如果需要处理的数据量很大,响应时间就会很长。

这类场合正是全文索引(full-text index)可以大显身手的地方。在生成这种类型的索引时,MySQL将把在文本中出现的所有单词创建为一份清单,查询操作将根据这份清单去检索有关的数据记录。全文索引即可以随数据表一同创建,也可以等日后有必要时再使用下面这条命令添加:

ALTER TABLE tablename ADD FULLTEXT(column1, column2)

有了全文索引,就可以用SELECT查询命令去检索那些包含着一个或多个给定单词的数据记录了。下面是这类查询命令的基本语法:

SELECT * FROM tablename

WHERE MATCH(column1, column2) AGAINST('word1', 'word2', 'word3')

上面这条命令将把column1和column2字段里有word1、word2和word3的数据记录全部查询出来。

注解:InnoDB数据表不支持全文索引。

查询和索引的优化

只有当数据库里已经有了足够多的测试数据时,它的性能测试结果才有实际参考价值。如果在测试数据库里只有几百条数据记录,它们往往在执行完第一条查询命令之后就被全部加载到内存里,这将使后续的查询命令都执行得非常快--不管有没有使用索引。只有当数据库里的记录超过了1000条、数据总量也超过了MySQL服务器上的内存总量时,数据库的性能测试结果才有意义。

在不确定应该在哪些数据列上创建索引的时候,人们从EXPLAIN SELECT命令那里往往可以获得一些帮助。这其实只是简单地给一条普通的SELECT命令加一个EXPLAIN关键字作为前缀而已。有了这个关键字,MySQL将不是去执行那条SELECT命令,而是去对它进行分析。MySQL将以表格的形式把查询的执行过程和用到的索引(如果有的话)等信息列出来。

在EXPLAIN命令的输出结果里,第1列是从数据库读取的数据表的名字,它们按被读取的先后顺序排列。type列指定了本数据表与其它数据表之间的关联关系(JOIN)。在各种类型的关联关系当中,效率最高的是system,然后依次是const、eq_ref、ref、range、index和All(All的意思是:对应于上一级数据表里的每一条记录,这个数据表里的所有记录都必须被读取一遍--这种情况往往可以用一索引来避免)。

possible_keys数据列给出了MySQL在搜索数据记录时可选用的各个索引。key数据列是MySQL实际选用的索引,这个索引按字节计算的长度在key_len数据列里给出。比如说,对于一个INTEGER数据列的索引,这个字节长度将是4。如果用到了复合索引,在key_len数据列里还可以看到MySQL具体使用了它的哪些部分。作为一般规律,key_len数据列里的值越小越好(意思是更快)。

ref数据列给出了关联关系中另一个数据表里的数据列的名字。row数据列是MySQL在执行这个查询时预计会从这个数据表里读出的数据行的个数。row数据列里的所有数字的乘积可以让我们大致了解这个查询需要处理多少组合。

最后,extra数据列提供了与JOIN操作有关的更多信息,比如说,如果MySQL在执行这个查询时必须创建一个临时数据表,就会在extra列看到using temporary字样

如何把GIT仓库的子目录独立为子模块

最近在给考拉山后台添砖加瓦的过程中,发现了两个问题:

对于当前的同一套逻辑,我已经有4个view层工作在上面了,马上还要再加上一个view,专门用来显示分享出去的页面;

接下来还要再加上同步evernote这种异步任务;

而现在这些代码都还在同一个GIT仓库中;

这种混乱的场景已经快让我不能忍了,于是乎决定把这个大仓库中的所有business和model的代码独立到一个submodule中,这样接下来就可以进一步的拆分各个view让它们都引用这个submodule。

还好之前的代码结构还算比较好,所有business和model的代码都在一个名为coloshine的目录中,所以接下来只要解决如何把一个子目录独立成一个submodule并且保存分支和提交历史这个问题就好了。

对git还没精通到这个程度,只能上网Google,现贴出方案;

准备

当前的目录结构如下:

coloshine-server

├── ....

├── coloshine - 想要变成子模块的目录

├── coloshine_account

├── coloshine_admin

├── coloshine_api

├── coloshine_pics

├── ...

Clone一个新的仓库到目录coloshine

:::bash

git clone coloshine-server coloshine

这时coloshine仓库的目录结构应该是和coloshine-server完全一样的。

选择要保存的分支

通常刚clone出来的coloshine仓库本地只会有一个分支(比如master),如果我们希望在马上要做的子模块中保存其他的分支,那就首先把它们创建出来:

:::bash

git branch -r br1 origin/br1

git branch -r br2 origin/br2

最后origin这个remote是不需要的,把它删除了

:::bash

git remote rm origin

转化成子模块

这一步是最重要的步骤,命令如下:

:::bash

git filter-branch --tag-name-filter cat --prune-empty --subdirectory-filter coloshine -- --all

该命令过滤所有历史提交,保留对coloshine子目录有影响的提交,并且把子目录设为该仓库的根目录。下面解释下各参数意思:

--tag-name-filter cat 该参数控制我们要如何保存旧的tag,参数值为bash命令,cat表示原样输出。所以,如果你不关心tag,就不需要这个参数了;

--prune-empty 删除空的(对子目录没有影响的)的提交

--subdirectory-filter coloshine 指定子模块路径

-- --all 该参数必须跟在--后面,表示对所有分支做操作,即对上一步创建的所有本地分支做操作。所以,如果你只想保存当前分支,就不需要这个参数了

该命令执行完毕后,查看当前目录结构就会发现里面已经是子目录的内容了。git log查看提交历史已经正常保存了。

至此,主要工作已经完成。但是当前的仓库中还保存这一下不需要的object,如果想清理这些来减小当前仓库的体积,再看下一步。

清理

:::bash

git reset --hard

git for-each-ref --format="%(refname)" refs/original/ | xargs -n 1 git update-ref -d

git reflog expire --expire=now --all

git gc --aggressive --prune=now

这些命令到底是怎么work的我也没仔细研究,就不解释了。总是,我的实践证明它们是正常work的,仓库体积减小了不少。

最后,我们就可以把这个新的仓库提交到服务器上,然后把旧仓库中的coloshine子目录删除并以submodule的方式添加coloshine仓库就好了。

关于colo香港服务器和香港colo机房的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

取消
扫码支持 支付码