说一说mysql的索引吧

2012 年 01 月 15 日 分类 :MySQL语法 0

我做开发好几年了,从来没用过索引,这次做的一个大系统最近非常慢,偶然的一个机会我找个字段加了下索引,速度感觉提升了100倍,才对索引产生兴趣的。

先规划你的查询 之后使用explain看一下 是否使用了索引 如下:

explain SELECT * from web_site where first_url like ‘%http://www.xqs.cn%’

哪个要加索引要看查询的需求,基本都是经常会用到检索的才需要加索引,
不是经常用到where语句中的字段如果添加索引的情况不但会使表空间变大,而且增加修改的负担。

1.普通索引。
这是最基本的索引,它没有任何限制。它有以下几种创建方式:
(1)创建索引:Create INDEX indexName ON tableName(tableColumns(length));如果是CHAR,VARCHAR类型,length可以小于字段实际长度;如果是BLOB 和 TEXT 类型,必须指定length,下同。
(2)修改表结构:Alter tableName ADD INDEX [indexName] ON (tableColumns(length)) 或者 CREATE INDEX username ON tableName (uname)  我常用后者。

(3)创建表的时候直接指定:Create TABLE tableName ( [...], INDEX [indexName] (tableColumns(length)) ;

2.唯一索引。
它与前面的”普通索引”类似,不同的就是:索引列的值必须唯一,但允许有空值。如果是组合索引,则列值的组合必须唯一。它有以下几种创建方式:
(1)创建索引:Create UNIQUE INDEX indexName ON tableName(tableColumns(length))
(2)修改表结构:Alter tableName ADD UNIQUE [indexName] ON (tableColumns(length))
(3)创建表的时候直接指定:Create TABLE tableName ( [...], UNIQUE [indexName] (tableColumns(length));

3.主键索引
它是一种特殊的唯一索引,不允许有空值。一般是在建表的时候同时创建主键索引:Create TABLE testIndex(i_testID INT NOT NULL AUTO_INCREMENT,vc_Name VARCHAR(16) NOT NULL,PRIMARY KEY(i_testID)); 当然也可以用Alter命令。

nginx绑定多个域名

2012 年 01 月 13 日 分类 :linux 0

刚用nginx的时候还有点担心这玩意到底好用不好用,毕竟用了很长时间的apache了。进过一番摸索。获得了一些设置方法。 » 阅读全文

SSH远程快速登录Linux

2012 年 01 月 12 日 分类 :linux 0

使用SSH管理linux服务器,通常要使用ssh,然后输入用户,密码,其实只要配置一个文件就可以方便登录。
假设要登录server域名是www.xqs.cn上一个名为xqs的账号。若多次登录系统输这么长的名字比较麻烦,所以用xqs作为www.xqs.cn的简称。此外,为了获得较高的传输速度,还要启用ssh的数据压缩功能。下面就可以使用如何设置ssh客户端的配置文件ssh_config:

» 阅读全文

一些常用的vim替换命令,有的是正则,还是挺有用的。

2012 年 01 月 09 日 分类 :linux 0

语法为 :[addr]s/源字符串/目的字符串/[option]
全局替换命令为::%s/源字符串/目的字符串/g
[addr] 表示检索范围,省略时表示当前行。
如:“1,20” :表示从第1行到20行;
“%” :表示整个文件,同“1,$”;
“. ,$” :从当前行到文件尾;
s : 表示替换操作
[option] : 表示操作类型
如:g 表示全局替换; 
c 表示进行确认
p 表示替代结果逐行显示(Ctrl + L恢复屏幕);
省略option时仅对每行第一个匹配串进行替换;
如果在源字符串和目的字符串中出现特殊字符,需要用”\”转义 » 阅读全文

php还有很多东西要去了解要去学

2012 年 01 月 08 日 分类 :php语法 0

学了一段时间的PHP,觉得这玩意还是能实现很多东西,内容管理、采集、数据处理等等。还有很多功能没有被接触,下面记录一下,以便自己按照这样的路子往下玩。
» 阅读全文

MYSQL怎么从GBK编码转到UTF8编码的方法

2012 年 01 月 08 日 分类 :MySQL语法 0

我用这个方法,挺好用,目前还没过问题,适合数据量小的表转换,我的库文件才50M,顺利完成了转换

» 阅读全文

服务器或VPS用户如何用命令创建MYSQL数据库

2012 年 01 月 08 日 分类 :MySQL语法 0

一、连接MYSQL

格式: mysql -h主机地址 -u用户名 -p用户密码

1、 连接到本机上的MYSQL。

首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root -p,回车后提示你输密码.注意用户名前可以有空格也可以没有空格,但是密码前必须没有空格,否则让你重新输入密码.

如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是: mysql>

2、连接到远程主机上的MYSQL。假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入以下命 令:

mysql -h110.110.110.110 -u root -p 123;(注:u与root之间可以不用加空格,其它也一样)

3、 退出MYSQL命令: exit (回车) » 阅读全文

yum安装apache php mysql

2012 年 01 月 07 日 分类 :linux 0

执行下面的命令安装即可
yum -y install httpd php mysql mysql-server php-mysql php-mbstring php-mcrypt php-gd vsftpd

安装pdo和curl可以执行下面的命令
yum install php-pdo curl

linux删除apache、mysql、php的方法

2012 年 01 月 07 日 分类 :linux 0

创造一个干净的系统。

首先需要判断,以php为例。
执行rpm -q php,如果返回php版本,刚是rpm安装;不返回php版本则是二进制安装。
对于rpm安装执行rpm -e php –nodeps 即可彻底系统自带的php;对于二进制安装直接目录就可以。
apache、mysql用同样的方法即可删除。

» 阅读全文

nginx如何绑定多个域名,一个目录绑定多个域名,nginx设置301跳转,nginx设置404页面

2012 年 01 月 04 日 分类 :linux 0

刚用nginx的时候还有点担心这玩意到底好用不好用,毕竟用了很长时间的apache了。进过一番摸索。获得了一些设置方法。 » 阅读全文