设为首页 设为首页 | 收藏本站 收藏本站 | 简繁转换
   中国网管联盟
网盟首页 | 企业建站 | IT厂商 | IT认证 | 网站建设 | 病毒播报 | 网管介绍 | 黑客帝国 | 网吧视角 | 网站导航 |
网管协会 | 网管学院 | IT产品 | IT职场 |ERP技术| 电脑故障 | 求职招聘 | 网络创业 | 加入我们 | 网站投稿 |
 您当前位置:网管联盟 >首页 -> IT技术 -> IT认证 -> 数据库认证 【文章字体颜色: 绿       双击自动屏滚阅读

MySQL10条鲜为人知的技巧

编辑:cheng | 2007-11-18 11:23:21 | 来源:youPC.cn |  匿名投稿  加入会员  收藏本文 [1565]

 

    MySQL易学易用,且附带丰富的技术文档,这二个因素使之被广泛应用。然而,随着MySQL发展之迅速,即使一个MySQL老手有时也会为该软件出其不意的功能感叹。本文将为你介绍这些不为人知的特性。

.    XML格式查看查询结果

    通过使用传统—xml 选项调用MySQL命令行客户程序,你可以以XML格式(而不是传统的列表形式)来查看MySQL查询结果。如果你打算将查询输出与其它程序集成在一起,这一技巧非常有用,这里是一个例子:

shell> mysql --xml mysql> SELECT * FROM test.stories;<?xml version="1.0"?><resultset statement="SELECT * FROM test.stories"><row><id>1</id><headline>This is a test</headline><tstamp>2005-07-28 00:14:57</tstamp></row><row><id>2</id><headline>This is the second test</headline><tstamp>2005-07-28 00:15:11</tstamp></row></resultset>2 rows in set (0.11 sec)


    快速重建索引

    通常情况下,如果你想改变服务器的全文搜索变量,你需要在表格中重新建立全文索引,以确保你的更新得到映射。这一操作将会花费大量的时间,特别是如果你需要处理很多数据的时候。一种快速的解决方法是使用REPAIR TABLE命令,以下为演示过程:

mysql> REPAIR TABLE content QUICK;+-----------+--------+----------+----------+ | Table| Op| Msg_type | Msg_text |+-----------+--------+----------+----------+ | content| repair | status| OK|+-----------+--------+----------+----------+ 1 row in set (0.05 sec)

     压缩一定的表格类型

    如果你处理的是只读MyISAM表格,MySQL允许你将其压缩以节省磁盘空间。对此可以使用包括myisampack,如下所示:

shell> myisampackmovies.MYICompressing movies.MYD: (146 records)- Calculating statistics- Compressing file41.05%

    使用传统SQL

    MySQL支持SQL查询中的传统用法,支持IF与CASE结构。以下是一个简单的例子:

mysql> SELECT IF (priv=1, 'admin', 'guest') As usertype FROM privs WHERE username = 'joe';+----------+ | usertype |+----------+ | admin|+----------+ 1 row in set (0.00 sec)

    以CSV格式输出表格数据

    MySQL输出文件包含一个全部SQL命令列表。如果你想将输出文件导入到MySQL,这一功能非常实用,但如果目标程序(比如Excel)不能与SQL相互通讯,这一方法将行不通。在这种情况下,可以通过告诉MySQL以CSV格式建立输出文件,这种CSV格式很方便地导入到绝大部分的程序。这里演示了mysqldump的操作过程:

shell> mysqldump -T . --fields-terminated-by=", " mydbmytable

    这将在当前目录中生成一个文本文件,包含来自mydb.mytable列表中以逗号为间隔符的记录。

    以激活strict模式减少“bad”数据的出现

    MySQL服务器能够以多种不同的模式运行,而每一种都针对于特定的目的而优化。在默认情况下,没有设置模式。然而,通过在服务器命令行中添加以下选项可以很容易地改变模式的设置并将MySQL以“strict”模式运行:

shell> mysqld --sql_mode="STRICT_ALL_TABLES" &

    在“strict”模式下,通过MySQL的中止查询执行并返回一个错误,服务器的很多自动修正功能都被无效化。同样,该模式下也将会执行更为严格的时间检查。

    监视服务器

    你可以通过运行SHOW STATUS命令获得一份服务器运行与统计的报告,包括打开连接的次数,激活查询次数,服务器正常运行时间等等。例如:

mysql> SHOW STATUS;+------------------+-------+ | Variable_name| Value |+------------------+-------+ | Aborted_clients| 0|| Aborted_connects | 0|...| Uptime| 851|+------------------+-------+ 156 rows in set (0.16 sec)

    自动返回CREATE TABLE代码

    MySQL允许你自动获得SQL命令重新建立一个特定的表格。只简单地运行SHOW CREATE TABLE命令,并查看表格建立代码,如下所示:

mysql> SHOW CREATE TABLE products;----------------------------------------------------- | Table| Create Table+----------+----------------------------------------- | products | CREATE TABLE `products` (`id` int(8) NOT NULL auto_increment,`name` varchar(255) NOT NULL default '',`price` int(10) default NULL,PRIMARY KEY(`id`)) ENGINE=MyISAM DEFAULT CHARSET=latin1 |+----------+----------------------------------------- 1 row in set (0.27 sec)

    建立一个更为有用的命令提示:

    在缺省情况下,MySQL命令行客户程序显示一个简单的mysql>提示符。然而,你可以使用特定的修改内容来改变这一提示符使之变得更为有效,这些内容包括:当前用户名称,主机名称,以及当前选择的数据库。如下所示:

mysql> prompt U:/d>PROMPT set to 'U:/d>'root@localhost:/db1>

    从这里的文档文件你可以获得支持MySQL客户程序更改的一个完整列表。

 责任编辑:中国网管联盟  

 

会员介绍                                免费加入会员

内容搜索

关键字:

 

 

 

 

 

 1、SQL是一种声明式语言首先要把这个概念记在脑中:“声明”。SQL语言是为计算机声明了一个你想从原始数..  [阅读全文]
   [阅读全文]
 1。从www.sqlite.org下载SQLite3.3.4的版本 为了方便,我把它解压了,就一个SQLite3.exe,放入Windows..  [阅读全文]

 

 

 

 

 

 

 

 

 

 

 

 

Copyright © 2006-2015 YouPC.CN All Rights Reserved.
感谢所有关心和支持过中国网管联盟的朋友们
我们一直用心在做我们的网站
粤ICP备13025977号
深圳网络警察报警平台 违法和不良信息举报中心 经营性网站备案      

站长QQ:4735566

本站QQ群:32903123