FreeBSD 版本是 7.3,MySQL 版本是 5.0.90,Apache 版本是 2.2.14 ( 1.3.42 ) ,PHP 版本是 5.2.12. 我的安装顺序是先 MySQL, 然后安装 Apache 和 PHP, 一般是安装完成一个并测试通过后安装下一个 , 这样容易发现问题所在 .

一 . 安装 MySQL

代码如下

cd /usr/ports/databases/mysql50-server/

make WITH_XCHARSET=all    // 默认支持所有字符集

make install

# 经历一个比较长的下载和编译过程后 ,mysql 基本安装完成 .

代码如下

rehash

# 拷贝 MySQL 的配置文件 , 系统默认提供了四个 , 需要根据服务器的配置来选择适合的配置文件 ,MySQL 的大部分配置 # 都可以通过此配置文件来完成 , 也可以在此配置文件中查看数据库的各种配置信息 .

代码如下

cp /usr/local/share/mysql/my-large.cnf   /etc/my.cnf

# 编辑 rc.conf 文件 , 在其中添加 mysql_enable="YES"

代码如下

vi /etc/rc.conf

# 启动 MySQL

代码如下

cd /usr/local/etc/rc.d/

./mysql-server.sh start

# 启动 MySQL 客户端

代码如下

cd /usr/local/bin

./mysql   –u  root   -p

如果能成功连接到 MySQL, 则表示安装成功 !

需要注意的几点:

make安装时候的参数

代码如下

WITH_XCHARSET=all 不加这个的话会不支持GBK编码

BUILD_OPTIMIZED=yes

BUILD_STATIC=yes

这2项都是起到优化作用,都加上的好

mysql默认读取/etc目录下面的my.cnf,但是安装过程不会自动在这目录下创建本文件,默认这个文件在/usr/local/share/mysql目录下面,有3个版本:

my-large.cnf 一般高配置服务器或者mysql专用服务器用这个配置文件

my-medium.cnf 服务器配置并跑有其它应用时用这个配置文件

my-small.cnf 服务器资源紧张的就用这个好了

根据你的机器配置选择一个

代码如下

cp /usr/local/share/mysql/my-large.cnf /etc/my.cnf

安装过程并不会自动创建默认的数据库,需要手工创建

代码如下

/usr/local/bin/mysql_install_db –user=mysql

并且需要更改数据库目录的权限,不然会启动不起来

代码如下

chown -R mysql:mysql /var/db/mysql

启动mysql,好像第一次用脚本启动的话要使用

代码如下

/usr/local/etc/rc.d/mysql-server onestart

使用/usr/local/etc/rc.d/mysql-server start不行

修改root密码,比如我们要修改成123456

代码如下

mysqladmin -uroot -p password 123456

会提示你再次输入一次密码Enter password:,再输入一次123456即可(Fising注:这里应该是输入原来的老密码,而非确认新密码)

修改数据文件的默认目录

vi /etc/my.cnf中加入datadir=数据库的目录,记得把原/var/db/mysql中的文件都复制过去,再执行

chown -R mysql:mysql 数据库的目录

最后一点千万别忘记,要不然mysql又该启动不起来了

修改/usr/local/etc/rc.d/mysql-server文件中的mysql_dbdir=”/var/db/mysql”为你的新目录

或者在/etc/rc.conf中加入mysql_dbdir=”新目录”

最后在/etc/rc.conf加入mysql_enable=”yes”让mysql开机自启动