安装环境:VMWare + RedHat Linux AS5U2
Linux的安装过程比较简单这里就不在赘述了。为了避免实验中不必要的麻烦,建议大家在安装的时候将SELinux(SELinux 是 linux 系统中一个强制性的安全机制)、iptables等服务禁用掉,如果在安装Linux的时候忘记了也可以用如下的方法:
# vi /etc/selinux/conifg
将 SELINUX=enforcing改成SELINUX=disabled即可。
MySQL的安装:
1.下载mysql源码包并解压
#cd /usr/local/src
#tar xzvf mysql-5.1.30.tar.gz
#cd mysql-5.1.30
2.创建mysql用户、组
#groupadd mysql
#useradd -g mysql -s /bin/false -M mysql
3.编译安装
#./configure –prefix=/usr/local/mysql –localstatedir=/var/lib/mysql –with-comment=Source –with-server-suffix=Comsenz –with-mysqld-user=mysql –without-debug –with-big-tables –with-charset=gbk –with-collation=gbk_chinese_ci –with-extra-charsets=all –with-pthread –enable-static –enable-thread-safe-client –with-client-ldflags=-all-static –with-mysqld-ldflags=-all-static –enable-assembler –without-ndb-debug
如果编译成功,你会看到:Thank you for choosing MySQL!
#make;make install
#./configure –help
部分配置选项说明:
CC:C编译器的名称(用于运行configure)
CFLAGS:C编译器的标志(用于运行configure)
CXX:C++编译器的名称(用于运行configure)
CXXFLAGS:C++编译器的标志(用于运行configure)
–prefix:指定安装目录,本文示例为/usr/local/mysql
–localstatedir:指定默认数据库文件保存目录,默认为安装目录下的var目录
–enable-thread-safe-client:编译线程安全版的MySQL客户端库
–enable-assembler:使用一些字符函数的汇编版本
–with-client-ldflags:客户端链接参数,本文示例为指定静态编译mysql客户端
–with-mysqld-ldflags:服务器端链接参数,本文示例为指定静态编译mysql服务器
–with-big-tables:在32位平台上支持大于4G行的表
–with-charset:指定默认字符集。mysql默认使用latin1(cp1252)字符集,可以使用此选项更改。字符集可以是big5、 cp1251、cp1257、czech、danish、dec8、dos、euc_kr、gb2312、gbk、german1、hebrew、 hp8、hungarian、koi8_ru、koi8_ukr、latin1、latin2、sjis、swe7、tis620、ujis、usa7或 win1251ukr。
–with-collation:指定默认校对规则。mysql默认使用latin1_swedish_ci校对规则,可以使用此选项更改。
–with-extra-charsets:服务器需要支持的字符集,有三种可能的值:空格间隔的一系列字符集名;complex ,包括不能动态装载的所有字符集;all,将所有字符集包括进二进制。本文示例为complex。
注:要想更改字符集和校对规则,要同时使用–with-charset和–with-collation选项。 校对规则必须是字符集的合法校对规则。(在mysql中使用SHOW COLLATION语句来确定每个字符集使用哪个校对规则)。
MySQL目录结构:
./bin #mysql用户可执行文件目录
./include/mysql #mysql C头文件目录
./info #mysql 信息文件目录
./lib/mysql #mysql库文件目录
./libexec #mysql后台daemon程序目录
./man #mysql联机帮助文档目录
./mysql-test #mysql测试程序目录
./share/mysql #mysql公用文件目录,包括字符集、配置文件模板、启动脚本、初始化SQL文件等
./sql-bench #mysql压力测试程序目录
/etc/my.cnf #mysql配置文件
/etc/rc.d/init.d/mysqld #mysqld 服务启动脚本
4. MySQL的配置
初始化数据库
#cd /usr/local/mysql
#bin/mysql_install_db –user=mysql
设置目录文件权限
#chown -R root:mysql .
#chown -R mysql /var/lib/mysql
#cp share/mysql/my-large.cnf /etc/my.cnf
#cp share/mysql/mysql.server /etc/rc.d/init.d/mysqld
#chmod 755 /etc/rc.d/init.d/mysqld
加入自动启动服务队列
# chkconfig –add mysqld
# chkconfig –level 2345 mysqld on
开启或关闭mysqld服务
#/etc/rc.d/init.d/mysqld start/stop
OR
#service mysqld start/stop
修改root初始密码
#bin/mysqladmin -u root password “your password”
登录MySQL服务器
# mysql -uroot –ppassword (注意没有空格)
将mysql的bin目录加入PATH环境变量
编辑/etc/profile文件:
#vi /etc/profile
在文件最后添加如下两行:
PATH=$PATH:/usr/local/mysql/bin
export PATH
5. 安装完成
故障诊断:
在启动MySQL服务的时候,可能会遇到如下错误:
////**************************** 注 意 *****************************
若启动出现如下提示:
Starting MySQL..Manager of pid-file quit without updating file.[FAILED]
只要将/etc/my.cnf里面的 skip federated注释掉即可。
*************************************************************\\\\\\\\\\\\
如果你使用windows下的Zend来开发,而MySQL在Linux下,需要设置MySQL允许远程登录,设置方法可以参考:设置MySQL远程连接的方法
-The End-