<b>CentOS Linux下MySQL 5.1.x的安装</b>[服务器安全]
本文“<b>CentOS Linux下MySQL 5.1.x的安装</b>[服务器安全]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
CentOS Linux下MySQL 5.1.x的安装、优化和安全配置
下载页面:http://dev.mysql.com/downloads/mysql/5.1.html#downloads
groupadd mysql
新建一个名为mysql的用户组
useradd -g mysql mysql
在mysql用户组下新建一个名为mysql的用户
|
gunzip < mysql-VERSION.tar.gz | tar -xvf -
解压下载到的.gz文件
cd mysql-VERSION
进入解压后的目录
CFLAGS=″-O3 -mcpu=pentium4″ CXX=gcc CXXFLAGS=″-O3 -march=pentium4 -felide-constructors -fno-exceptions -fno-rtti″ ./configure –prefix=/home/mysql/ –without-debug –with-unix-socket-path=/home/mysql/tmp/mysql.sock –with-client-ldflags=-all-static –with-mysqld-ldflags=-all-static –enable-assembler –with-extra-charsets=gbk,gb2312,utf8 –without-innodb –without-isam –with-pthread –enable-thread-safe-client
配置mysql
gcc的相关参数:
-O3
-O
-O1
优化.关于大函数,优化编译占用略微多的时间和相当大的内存.
不利用`-O’选项时,编译器的目标是削减编译的开销,使编译后果可以调试.语句是独立的:假如在 两条语句之间用断点中止程序,你可以对任何变量重新赋值,大概在函数体内把程序计数器指到其他语句,以及从源程序中 切确地获得你等待的后果.
不利用`-O’选项时,只有声明了register的变量才分配利用存放器.编译后果比不用 `-O’选项的PCC要略逊一筹.
利用了`-O’选项,编译器会试图削减目标码的大小和履行时间.
如 果指定了`-O’选项, `-fthread-jumps’和`-fdefer-pop’选项将被 翻开.在有delay slot的机械上, `-fdelayed-branch’选项将被翻开.在即便没有帧指针 (frame pointer)也支持调试的机械上, `-fomit-frame-pointer’选项将被翻开.某些机械上 还大概会翻开其他选项.
-O2
多优化一些.除了触及空间和速度交换的优化选项,履行几近全部的优化工作.比方不举行循环展开(loop unrolling)和函数内嵌(inlining).和-O选项对比,这个选项既增添了编译时间,也提高了生成代码的 运行效果.
-O3
优化的更多.除了翻开-O2所做的一切,它还翻开了-finline-functions选项.
-O0
不优化.
假如指定了多个-O选项,不管带不带数字,最后一个选项才是见效的选项.
-mcpu=pentium4 按照CPU范例优化编译,可以让你的mysq表现更好!可选项目很多:i386, i486, i586, i686, pentium, pentium-mmx, pentiumpro, pentium2, pentium3, pentium4, k6, k6-2, k6-3, athlon, athlon-tbird, athlon-4, athlon-xp,athlon-mp,winchip-c6, winchip2 , c3.
-fomit-frame-pointer 关于不需求栈指针的函数就不在存放器中保存指针,因此可以忽视存储和检索地址的代码,并将存放器用于普通用处.全部”-O”级别都翻开着一选项,但仅在调试器可以不依靠栈指针运行时才有效.倡议不需求调试的情形下显式的设置它.
configure的相关参数:
–prefix=/home/mysql/ 指定安装目录
–without-debug 去除debug情势
–with-extra-charsets=gbk,gb2312,utf8 增添gbk,gb2312,utf8中文字符支持
–with-pthread 强迫利用pthread库(posix线程库)
–enable-assembler 利用一些字符函数的汇编版本
–enable-thread-safe-client 以线程方法编译客户端
–with-client-ldflags=-all-static 以纯静态方法编译客户端
–with-mysqld-ldflags=-all-static 以纯静态方法编译服务端
–without-isam 去掉isam表范例支持,目前很罕用了,isam表是一种依靠平台的表
–without-innodb 去掉innodb表支持,innodb是一种支持事件处理的表,合适企业级利用
make
编译
make install
安装
cp support-files/my-medium.cnf /etc/my.cnf
将mysql的配置文件copy到/etc目录下,并改名为my.cnf
/home/mysql下面有5个my-xxxx.cnf文件
my-small.cnf 最小配置安装,内存<=64M,数据数目最少
my-large.cnf 内存=512M
my-medium.cnf 32M<内存<64M,大概内存有128M,但是数据库与web服务器公用内存
my-huge.cnf 1G<内存<2G,服务器主要运行mysql
my-innodb-heavy-4G.cnf 最大配置安装,内存至少4G
cd /home/mysql
进入安装目录
bin/mysql_install_db –user=mysql
以mysql用户的身份成立数据表
chown -R root .
将mysql的主目录(即/home/mysql)的属主设为root用户.这是官方文档上的号令,但奇特的是,假如将mysql的主目录属主设成 root用户,在运行了下面的bin/mysqld_safe –user=mysql &后则不能启动mysql.问题出在“权限”上,运行chown -R mysql .则可以用下面的号令正常启动mysql.莫非官方文档有错?但愿大家一同来探究一下.
chown -R mysql var
将var目录的属主设为mysql用户
chgrp -R mysql .
将mysql的主目录的属主设为mysql用户组(注意:和前面的号令不一样,这个号令是对用户组举行赋权)
bin/mysqld_safe –user=mysql &
启动mysql,假如一切正常的话,运行此号令后,不会有任何提醒.
bin/mysqladmin -u root password password
改正root用户的密码,这里的root用户指的是mysql的root用户,与Linux的root用户无关.绿色的password就是你需求设置的新密码,紧记!
bin/mysql -u root -p
假如正常的话,用这个名字可以登录,在输入密码后,呈现mysql > 的提醒符表明登录成功.用quit号令可退出
以下号令用于设置mysql开机自动运行
cd mysql-VERSION
再次进入解压后的目录,即源码目录.
cp support-files/mysql.server /etc/init.d/mysql
将mysql.server这个文件copy到/etc/init.d/目录下,并改名为mysql
chmod 755 /etc/init.d/mysql
给/etc/init.d/mysql这个文件赋予“履行”权限
chkconfig –level 345 mysql on
加入到开机自动运行,运行级别为3 4 5
service mysql restart
重启mysql服务
Q:为什么我用PHP衔接Mysql时提醒“connect fail:Can’t connect to local MySQL server through socket ‘/home/mysql/tmp/mysql.sock‘ (13)”
A: 这是因为PHP没能正常的衔接到Mysql套接字,即mysql.sock文件.首先,查抄/home/mysql/tmp/目录下能否有 mysql.sock这个文件.假如没有,大概是mysql没有正常启动;假若有,大概是/home/mysql/tmp/这个目录的权限不够,用 chmod 755 /home/mysql/tmp可办理此问题.
以上是“<b>CentOS Linux下MySQL 5.1.x的安装</b>[服务器安全]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |