欢迎来到天天文库
浏览记录
ID:40560321
大小:70.00 KB
页数:10页
时间:2019-08-04
《mysql配置和优化》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、mysql配置和优化在安装MySQL之前,先来了解一下相关的配置文件MySQL配置文件MySQL发布的最新产品实际上超出了Linux所携带的版本。但是,稳定性和开放源代码可是很重要的因素,因此在操作系统上使用较早MySQL版本是有道理的。有许多可以采用的配置文件,它们都被包含在mysql-serverPRM程序中。还有一个默认的配置文件被包含在mysqlPRM程序包中。配置MySQL服务器是一个丰富而复杂的工作。在本文中,我只能肤浅的说一下各种选项。可以使用的MySQL配置文件共有5个。最后4个位于
2、/usr/share/mysql/目录中。·/etc/my.cnf是默认的MySQL配置文件。应该对这个文件配置修改。它是为学习目的而设计的。·my-small.cnf是为了小型数据库而设计的。不应该把这个模型用于含有一些常用项目的数据库。·my-medium.cnf是为中等规模的数据库而设计的。如果你正在企业中使用RHEL,可能会比这个操作系统的最小RAM需求(256MB)明显多得多的物理内存。由此可见,如果有那么多RAM内存可以使用,自然可以在同一台机器上运行其它服务。·my-large.cnf
3、是为专用于一个SQL数据库的计算机而设计的。由于它可以为该数据库使用多达512MB的内存,所以在这种类型的系统上将需要至少1GB的RAM,以便它能够同时处理操作系统与数据库应用程序。·my-huge.cnf是为企业中的数据库而设计的。这样的数据库要求专用服务器和1GB或1GB以上的RAM。这些选择高度依赖于内存的数量、计算机的运算速度、数据库的细节大小、访问数据库的用户数量以及在数据库中装入并访问数据的用户数量。随着数据库和用户的不断增加,数据库的性能可能会发生变化。我将逐个的说明这些配置文件。如果
4、用户决定使用my-*.cnf文件之一,将首先需要把这个文件复制到/etc/my.cnf文件上。由于这些原因,用户应该仔细观察数据库系统的性能。如果发现问题,可能需要增加更多的RAM,或者把数据库迁移到一个含有附加资源(比如多个CPU)的系统上。提示:数据库变得非常大。把一个SQL数据库目录配置在一个专用分区上可能更有道理。虽然一个不断增长的数据库可能会占满整个分区,但它至少不会吞掉RHEL运行所必需的磁盘空间。/etc/my.cnf文件默认是/etc/my.cnf文件。它包含6条命令,并且这6条命令
5、被组织在3个配置段中。这些配置段与Samba配置文件中的配置段相似,并且含有功能组名称和相关的命令。本文将逐行的说明这个文件的默认版本。如果用户进行了任何修改,将需要确保MySQL启动脚本(即/etc/rc.d/init.d/mysqld)中的命令一致。[mysqld]在这个配置段之内,将会看到与MySQL守护进程相关的命令。datadir=/var/lib/mysqlMySQL服务器把数据库存储在由datadir变量所定义的目录中。Socket=/var/lib/mysql/mysql.sockM
6、ySQL套接字把数据库程序局部的或通过网络连接到MySQL客户。提示:MySQL被配置成使用InnoDB存储器引擎。如果用户在自己的系统上还没有一个InnoDB数据库,将需要给[mysqld]配置段添加skip-innodb语句。[mysql.server]在这个配置段之内,将会看到MySQL服务器守护进程有关的命令。这个配置段的较早期版本被命名为[mysql_server]。如果使用MySQL4.X或MySQL4.X以上版本,将必须把这个配置段标题改成[mysql_server]。当启动MySQL
7、服务时,它使用这个配置段中的选项。user=mysql与MySQL服务相关联的标准用户名是mysql。它应该是/etc/passwd文件的一部分;如果在这个文件中没有发现它,用户可能还没有安装RedHatEnterpriseLinuxmysql-serverRPM程序包。basedir=/var/lib这表示MySQL数据库的顶级目录。它充当MySQL系统上的一个根目录;这个数据库中的其它目录都是相对于这个目录。[safe_mysqld]这个配置段包含MySQL启动脚本所引用的命令。如果使用MySQ
8、L4.X或4.X以上版本,必须把这个配置段改成[mysqld_safe]。err-log=/var/log/mysqld.log这是MySQL所关联的错误被发送到的这个文件。如果使用MySQL4.X或4.X以上版本,必须使用log-error指令替换这条命令。pid-file=/var/run/mysqld/mysqld.pid最后,pid-file指令定义MySQL服务器在运作期间的进程标识符(PID)。如果MySQL服务器当前没有运行,这个文件应该不存在。提示:用
此文档下载收益归作者所有