MySQL是世界上实际最流行的数据库管理系统,是遍布全球编程社区的首选。它有一个系列有趣的特性,在很多方面都很擅长。由于其巨大的人气,在网上可以找到许多MySQL的使用技巧。这里有12个最好的技巧和窍门,所有MySQL数据库开发者都应该了解一下。
避免编辑转储文件
Mysqldump创建的转储文件原本是无害的,但它很容易被尝试去编辑。然而,人们应该知道在任何情况下的试图修改这些文件被证明是有危险的。直观地看对这些文件的改动会导致数据库损坏,从而导致系统的退化。为了让你的系统免受任何麻烦,你必须避免编辑MySQL转储文件。
MyISAM 块大小
大多数开发者忘记了这一事实,文件系统往往需要一个大的MyISAM块以保证高效运行。许多开发者不知道块大小的设置。.MYI文件存储在myisam_block_size的设置里,这个设置项可用来修改大的块尺寸。MyISAM块大小的默认值是1K,这不是当前大多数系统的恰当设置。因此,开发者应该考虑指定一个与之相适应的值。
打开 Delay_Key_Write
为避免系统崩溃时数据库损坏delay_key_write默认是关闭的。有人可能会问,如果是这样的话,为什么要把它放在首位打开呢?从防止数据库每次写MyISAM key文件时刷新该文件方面看这是必要的。通过把它打开,开发者可以节省很多时间。参考MySQL官方手册了解你的版本如何把它打开。
Joins(表连接)
创建索引和使用相同的列类型:join(表连接)操作可以在Mysql中被优化。若应用中有许多join操作,可以通过创建相同的列类型上join来优化。创建索引是加速应用的另一种方法。查询修改有助于你找回期望的查询结果。
优化WHERE从句
即使你只搜索一行MySQL也会查询整个表,因此,建议你当只需要一条结果时将limit设置为1。通过这样做,可以避免系统贯穿搜索整个表,从而可以尽可能快找到与你需求相匹配的记录。
在Select查询上使用Explain关键字
你肯定希望得到与任何特定查询相关的一些帮助。Explain关键词在这方面是非常有帮助的。它在你寻求查询到底做了什么时提供了具体细节。例如,在复杂join查询前键入Explain关键词你会得到很多有用的资料。
使用查询缓存优化查询
MySQL的查询缓存是默认启用的。这主要是因为缓存有助于查询的快速执行,缓存可以在相同的查询多次运行使用。你在关键字前加入当前日期、CURRDATE等PHP代码使查询缓存它从而启用此功能。
使用堆栈跟踪隔离Bug
各种Bug可以使用stack_trace隔离出来。一个空指针足以毁掉一段特定的代码,任何开发人员都知道它有这样的能力。了解使用堆栈跟踪的细节,从而在你的代码里避免bug。
设置SQL_MODE
枚举类型总是让人感到非常的疑惑。由于字段可能拥有多个可能的值,这些可能的值包括你指定的和null,在编码时将会出现很多问题,你将永远都会得到一个警告说代码不正确。一个简单的解决办法就是设置SQL_MODE。
$–sql-mode=”modes”
//or
$sql-mode=”modes” (my.ini – Windows / my.cnf – Unix)
//Change at runtime, separate multiple modes with a comma
$set [GLOBAL|SESSION] sql_mode=’modes’
//TRADITIONAL is equivalent to the following modes:
STRICT_TRANS_TABLES, STRICT_ALL_TABLES, NO_ZERO_IN_DATE, ERROR_FOR_DIVISION_BY_ZERO, and NO_AUTO_CREATE_USER
修改Root密码
修改root密码对于某些特定设置是必不可少的,修改命令如下:
$mysqladmin -u root password [Type in selected password]
//Changing users ROOT password
$mysqladmin -u root -p [type old password] newpass [hit enter and type new password. Press enter]
//Use mysql sql command
$mysql -u root -p
//prompt “mysql>” pops up. Enter:
$use mysql;
//Enter user name you want to change password for
$update user set password=PASSWORD (Type new Password Here) where User = ‘username’;
//Don’t forget the previous semicolon, now reload the settings for the users privileges
$flush privileges;
$quit
用MySQL Dump 命令备份数据库
开发者都知道数据库备份的重要性,当系统出现重大故障时能够起到救命的作用。
最简单的备份数据库的方法
//你也可以用简写"-u","-p"来分别代替"user"和"password"
//将多个数据库导入到一个文件只要在后面添加需要导出数据库的名称:
mysqldump –user [user name] –password=[password]
[first database name] [second database name] > [dump file]
//许多数据库都提供了顺序备份的功能,要备份所有数据库只需要添加--all-databases参数。如果你不喜欢命令行,从Sourceforge上下载automysqlbackup吧。
调整CONFIG的配置
PERL脚本MySQL Tuner是另一个强大的优化数据库性能的工具,它能够帮助你对MySQL配置来进行多处调整和修改。你可以访问该项目的官网来进一步了解它。
相关推荐
根据提供的文件信息,您需要的关于“PHP深度分析101个核心技巧、窍门和问题解决方法”的知识点梳理如下: 首先,标题所指的“PHP深度分析101个核心技巧、窍门和问题解决方法”预示着这本书是一本专注于PHP编程语言...
本资料集“Delphi生活小窍门(典型数据库实例源码)”旨在通过具体的数据库应用实例,帮助开发者更好地理解和掌握Delphi在数据库操作中的运用技巧。 1. Delphi与数据库接口:Delphi提供了多种方式与数据库进行交互...
- Tips & Tricks:技巧和窍门文档,分享了一些使用组件的实用技巧和最佳实践。 总的来说,Nextsuite6_11-21.rar组件包为开发者提供了一整套强大的VCL组件,覆盖了数据展示、数据库交互、对象调试和电子表格处理等多...
《DELPHI技巧集.chm》可能是包含了一系列Delphi编程的实用技巧和窍门,涵盖了从基础语法到高级特性的方方面面。通过阅读这份文档,你可以了解到如何优化代码,提高程序性能,以及如何解决在开发过程中遇到的各种问题...
以上内容涵盖了NetBeans平台7的各个方面,从基础知识到高级应用,从用户界面开发到服务器端开发,再到应用测试与发布,全面而深入地介绍了NetBeans平台的各项特性和使用技巧,为开发者提供了宝贵的参考资料。
"powerbuilder102个绝对实用技巧"则可能提供了一些高效编程和调试的窍门。 8. **开发实践**:"pb8数据窗口开发者手册"和"pb6.0数据库开发"可能分别专注于PowerBuilder 8和6.0版本的数据窗口开发和数据库相关功能,...
- **UI技巧与窍门**:分享了提高UI设计效率和质量的小贴士。 ### 核心模块应用(第3部分) 这部分涵盖了NetBeans平台标准模块的使用,包括帮助系统、输出窗口、导航器、属性编辑器、设置管理、调色板等,每个章节...
在PHP框架ThinkPHP中,处理数据库操作时,表名的大小写规则可能对开发者来说是个需要注意的细节。ThinkPHP遵循一定的规范来确保数据库操作的兼容性和可读性。本篇文章将详细探讨ThinkPHP中关于表名大小写的窍门以及...
网页制作工具CS5,全称为Adobe Dreamweaver CS5,是Adobe公司推出的一...在实际操作中,不断练习和探索,你将发现更多提高工作效率的技巧和窍门。同时,不要忘记查阅官方文档和在线教程,以便获取最新信息和最佳实践。
**ASP(Active Server Pages)**是一种由微软开发的服务器端脚本环境,它允许Web开发者创建动态、交互式的网页。ASP技术是构建Web应用程序的一种重要工具,尤其在20世纪90年代末到21世纪初,它在互联网上得到了广泛...
12. **Fullstack**:全栈开发,涵盖前端和后端,意味着开发者需要掌握整个应用的开发流程。 13. **Tips and Tricks**:提示和技巧,可能是作者在开发过程中积累的一些实用小窍门。 14. **Fullstack JavaScript**:...
GeoServer是一个社区驱动的项目,鼓励用户和开发者积极参与其中。参与的方式包括但不限于提交bug报告、提供文档改进、贡献代码以及参与社区讨论等。对于想要贡献的人来说,可以通过访问官方GitHub仓库、邮件列表或者...
##### 2.9 技巧与窍门 - **防垃圾邮件**:使用验证码或其他防垃圾邮件插件减少垃圾邮件的干扰。 - **隐藏文件夹的内容**:通过修改.htaccess文件来隐藏特定文件夹的内容。 ##### 2.10 故障排除 - **常见问题及解决...