天道酬勤

RDBMS and My Life

LAMP应用环境安装指南Ⅰ–MySQL

leave a comment

LAMP应用环境安装指南Ⅱ–Apache

LAMP应用环境安装指南Ⅲ–PHP

安装环境:VMWare + RedHat Linux AS5U2

Linux的安装过程比较简单这里就不在赘述了。为了避免实验中不必要的麻烦,建议大家在安装的时候将SELinuxSELinux 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

部分配置选项说明:

CCC编译器的名称(用于运行configure

CFLAGSC编译器的标志(用于运行configure

CXXC++编译器的名称(用于运行configure

CXXFLAGSC++编译器的标志(用于运行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 cp1251cp1257czechdanishdec8doseuc_krgb2312gbkgerman1hebrew hp8hungariankoi8_rukoi8_ukrlatin1latin2sjisswe7tis620ujisusa7 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 (注意没有空格)

mysqlbin目录加入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来开发,而MySQLLinux下,需要设置MySQL允许远程登录,设置方法可以参考:设置MySQL远程连接的方法

-The End-

Written by ochef

May 24th, 2009 at 10:21 pm

Posted in LAMP

Tagged with

Leave a Reply