存档

文章标签 ‘MySQL’

MySQL的mysqldump工具导入导出数据库

2010年8月31日

1.导出整个数据库(Dos下)
mysqldump -u 用户名 -p 数据库名 > 导出的文件名
mysqldump -u chai -p smgp_apps_wcnc > chai.sql
2.导出一个表
mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -u chai  -p smgp_apps_wcnc users>chai.sql

3.导出一个数据库结构
mysqldump -u chai -p -d –add-drop-table smgp_apps_wcnc >d:\chai.sql

-d 没有数据 –add-drop-table 在每个create语句之前增加一个drop table

4.导入数据库
常用source 命令
进入mysql数据库控制台,
如mysql -u root -p

mysql>use 数据库

然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
mysql>source d:\chai.sql

数据库 , , ,

MySQL中UNION和UNION ALL的区别

2010年5月22日

在数据库中,UNION和UNION ALL关键字都是将两个结果集合并为一个,但这两者从使用和效率上来说都有所不同。

MySQL中的UNION
UNION在进行表链接后会筛选掉重复的记录,所以在表链接后会对所产生的结果集进行排序运算,删除重复的记录再返回结果。实际大部分应用中是不会产生重复的记录,最常见的是过程表与历史表UNION。如:
select * from gc_dfys union select * from ls_jg_dfys
这个SQL在运行时先取出两个表的结果,再用排序空间进行排序删除重复的记录,最后返回结果集,如果表数据量大的话可能会导致用磁盘进行排序。 阅读全文…

数据库 , ,

Excel数据导入MySql

2010年3月2日

以前把Excel导入MySql主要采用以下两种方法:

1、将Excel转化成phpmyadmin可以导入的CVS格式,直接通过phpmyadmin导入。

2、通过PHP程序读取Excel,循环插入MySql数据库

今天发现一个更好的办法,使用一款叫 Excel to MySql 4.3的绿色程序,我是从这个地址下载到的:http://www.greendown.cn/soft/15317.html 。 具体步骤如下:

1. 启动程序,直接双击 xls2sql.exe 即可:

1

阅读全文…

数据库 , , , , ,

Linux服务器安装与配置Nginx+PHP+MySQL

2010年1月30日

一、 准备安装

1、下载软件:


以上是需要下载并安装的软件,最新版本请自行从Google搜索下载。

2、解压缩有压缩包

使用tar zxvf xxx.tar.gz 和 tar jxvf xxx.tar.bz2来解压缩。

阅读全文…

服务器 , , , ,

MySQL InnoDB 数据库恢复方法

2010年1月22日

上周末我的Blog突然打不开了,页面显示:Error establishing a database connection。查看虚拟主机的phpmyadmin,发现数据表都在,但是数据没有了,点击和修复表都显示:Incorrect information in file xxxx.frm。立即联系虚拟空间提供商,说数据库发生错误了,并查资料协助他们很快就解决了。

因为我的WordPress的MySQL用的是InnoDB类型的表,这种类型的一个表在磁盘上只对应一个“*.frm”文件,不像MyISAM那样还有“*.MYD,*.MYI”文件,所以不能直接复制数据库文件来恢复使用,但是MyISAM类型的表是可以的。那么InnoDB类型的表恢复的解决方法如下:

阅读全文…

数据库 , ,

MySQL全文索引

2010年1月20日

创建全文索引

ALTER TABLE `article` ADD FULLTEXT (`title`, `description` )

下来语句,在10万数据的表里,只需要0.2秒

SELECT * FROM article
WHERE MATCH (title, description ) AGAINST (‘girl’)
ORDER BY id DESC
LIMIT 20 ;

赞!

数据库 ,

Nginx+PHP+MySQL双机互备、全自动切换方案

2010年1月11日

在生产应用中,某台“Nginx+PHP+MySQL”接口数据服务器,扮演的角色十分重要,如果服务器硬件或Nginx、MySQL发生故障,而 短时间内无法恢复,后果将非常严重。为了避免单点故障,我设计了此套方案,编写了failover.sh脚本,实现了双机互备、全自动切换,故障转移时间 只需几十秒。

一、双机互备、全自动切换方案:
1、拓扑图:
点击在新窗口中浏览此图片

阅读全文…

架构设计 , , ,

MySQL语句优化的原则

2009年12月29日

1、使用索引来更快地遍历表。

缺省情况下建立的索引是非群集索引,但有时它并不是最佳的。在非群集索引下,数据在物理上随机存放在数据页上。

合理的索引设计要建立在对各种查询的分析和预测上。一般来说:
a.有大量重复值、且经常有范围查询( > ,< ,> =,< =)和order by、group by发生的列,可考虑建立群集索引;
b.经常同时存取多列,且每列都含有重复值可考虑建立组合索引;
c.组合索引要尽量使关键查询形成索引覆盖,其前导列一定是使用最频繁的列。索引虽有助于提高性能但不是索引
越多越好,恰好相反过多的索引会导致系统低效。用户在表中每加进一个索引,维护索引集合就要做相应的更新工作。

阅读全文…

数据库 , , ,

MySQL性能优化的最佳20+条经验

2009年12月29日

今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明 显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我 们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过 多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。

阅读全文…

数据库 , ,