在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 & ;;
stop) /opt/cuix/mysql-5.0.51/bin/mysqladmin -h 10.3.2.36 -P 9906 -uroot -p shutdown;;
esac
这样通过./mysql restart和./mysql stop就可以启动和关闭MySQL了。