Linux下MySQL5.0的安装

在SUSE9下MySQL5.0的安装及配置过程,由于是使用的源码包安装,该过程应该同样适用于其它版本的Linux。

一、安装MySQL

1、下载源码包

从mysql官网上下载linux下的source包mysql-5.0.51b.tar.gz,注意是下载GNU tar格式的,不是rpm包。

2、解包

tar xvf mysql-5.0.51b.tar.gz

3、进入mysql目录

cd mysql-5.0.51b

4、安装

./configure  --prefix=/opt/cuix/ mysql-5.0.51 指定mysql的安装目录

--with-charset=utf8           指定字符集

--with-collation=utf8_general_ci

make

make install

二、配置MySQL

1、初始化数据库

执行scripts/mysql_install_db,初始化mysql数据库的授权表,其中贮存了服务器的访问允许,该操作将会在mysql安装目录下创建var目录。

2、设置PATH

为了方便使用,将mysql-5.0.51/bin目录加入到当前用户的profile中,然后用which mysql检查一下是否ok.

3、设置my.cnf配置文件

在support-files目录下有三个预设置的文件可供选择,选择一个适合你的,我这里选择的是my-medium.cnf,复制这个文件到你的安装目录下:

cp support-files/my-medium.cnf  /opt/cuix/mysql-5.0.51/.my.cnf

注意my.cnf的使用方法,这个配置文件的路径可以在启动mysql时通过命令行参数给出,比如:

./mysqld_safe --defaults-file=.my.cnf &

4、赋予my.conf权限

chmod 744 .my.cnf

5、修改my.conf文件

查找[client]:

添加user=root,

去掉password前的注释并设定root账户的密码,

设定port,使用netstat –atln | grep “端口号”查看你自己的端口是否被占用,

更改socket,默认/tmp/mysql.sock可能和其他的mysql服务器冲突,修改到当前mysql安装目录下。

查找[mysqld]:

设定port及socket,

设定datadir=/opt/cuix/mysql-5.0.51/var

对client及mysqld均添加default-character-set=utf8

三、运行MySQL

1、启动mysql

进入mysql-5.0.37/bin目录(如果设置了Path就不必了),执行:

mysqld_safe --defaults-file=/opt/cuix/mysql-5.0.51/.my.cnf &

2、检查是否安装成功

mysqladmin version将会得到当前mysql的版本信息

3、登录mysql

mysql -h 127.0.0.1 -P 9906 -u root

4、修改root密码

root帐号默认密码为空,这个肯定是要修改的,可以连接上服务器后,执行:

use mysql;

update user set password=password('新密码') where user='root';

flush privileges;

5、添加新用户

添加test,容许从localhost和远程登录,密码为"test"

GRANT ALL PRIVILEGES ON *.* TO test@localhost IDENTIFIED BY 'test' WITH GRANT OPTION;

GRANT ALL PRIVILEGES ON *.* TO test@"%" IDENTIFIED BY 'test' WITH GRANT OPTION;

当使用SQL语句修改账户时使用FLUSH PRIVILEGES的原因是告诉服务器重读授权表。否则,只有重启服务器后更改才会被注意到。使用 GRANT,则不需要使用FLUSH PRIVILEGES。

6、关闭mysql

执行:

./mysqladmin -h localhost -P 3306 -u root -p  shutdown

到此安装及配置过程就结束了,可在用户根目录下建一个mysql的shell文件,便于启动及关闭MySQL,如下:

#!/bin/sh
case $1 in
start) /opt/cuix/mysql-5.0.51/bin/mysqld_safe --defaults-file=/opt/cuix/mysql-5.0.51/.my.cnf & ;;