1)下载需要的源码到/home/uploader/upload

mysql-5.0.22.tar.gz,推荐的网址为http://dev.mysql.com/downloads/。找到最后面的Source downloads,从中选择需要版本。

2)解压源码

cd /home/uploader/upload

tar zxvf mysql-5.0.22.tar.gz

3)cnf替换成conf包括文件和文件夹

/etc/my.cnf对于mysql数据库而言,这是一个默认的文件。当安装mysql数据库时,mysql数据库会先去找那个默认文件,并且加载那个默认文件,即/etc/my.cnf中的相关配置。所以,安装两个以上的版本时,需要首先进行如下操作:

cd /home/uploader/upload/mysql-5.0.22

find ./ -type f | xargs perl -pi -w -e 's/cnf/conf/g;'

目的在于将源码文件夹中的cnf替换成为conf.这样,安装好mysql数据库后,mysql数据库会先去找/etc/my.conf。也就不会加载上一个版本的/etc/my.cnf中的配置。

在将源码文件夹中的cnf替换成为conf之后,需要更改源码文件中的相关文件夹的名字,相关的文件在support-files目录,然后执行一下命令:

cd /home/uploader/upload/mysql-5.0.22/support-files

mv my-small.cnf.sh my-small.conf.sh

mv my-medium.cnf.sh my-medium.conf.sh

mv my-large.cnf.sh my-large.conf.sh

mv my-innodb-heavy-4G.cnf.sh my-innodb-heavy-4G.conf.sh

mv my-huge.cnf.sh my-huge.conf.sh

find ./ -name *.cnf | more(可以不做)

mv ./mysql-test/std_data/ndb_config_mycnf1.cnf ./mysql-test/std_data/ndb_config_mycnf1.conf

mv ./mysql-test/std_data/ndb_config_mycnf2.cnf ./mysql-test/std_data/ndb_config_mycnf2.conf

4)配置安装

cd /home/uploader/upload/mysql-5.0.22

groupadd mysql5

useradd -g mysql5 mysql5

./configure --prefix=/usr/app/mysql5

--enable-local-infile

--with-tcp-port=3406

--with-mysqld-user=mysql5

--with-base_dir=/usr/app/mysql5

--with-log=/usr/app/mysql5/mysqld.log

--with-pid_file=/var/lib/mysql5/andy.tks-it.com.cn.pid

--with-unix-socket-path=/tmp/mysql5.sock

--localstatedir=/var/lib/mysql5

--with-charset=utf8

注释:选项--enable-local-infileLOAD DATA语句的LOCALE能力设置为启用。

make

make install

cp support-files/my-large.conf/etc/my.conf

7)安装默认数据库

cd /usr/app/mysql5

bin/mysql_install_db --user=mysql5

8) 改变相应权限

cd /usr/app/mysql5

chown -R root .改变当前目录文件的宿主使root用户访问权限现在应用到mysql5

chown -R mysql5 /var改变文件的宿主使mysql5用户访问权限现在应用到/var

chgrp -R mysql5 .改变当前目录文件的所属群组当前目录的属组为mysql5

bin/mysqld_safe --user=mysql5 &

9) 修改密码

mysql数据库安装好之后,root的密码为空,为了安全起见,需要修改root的密码。

mysqladmin -u root password newpassword

10) 启动和停止mysql数据库

cd /usr/app/mysql5

bin/mysqld_safe --user=mysql5 &启动mysql

./share/mysql/mysql.server stop停止mysql

mysql自动备份脚本

cd /usr/sbin

vi bakmysql

添加如下语句:

bakDate=` date +%Y%m%d `

/usr/app/mysql5/bin/mysqldump

mysqldb -u root -ppassword > /home/uploader/backup/mysql_db/mysqldb$bakDate.sql

切换到命令模式,即按键盘上esc,然后输入:wq

vi /etc/crontab

添加:

17 02 * * * /usr/sbin/bakmysql

即每天0217执行数据库备份脚本,备份数据库到/home/uploader/backup/mysql_db。

切换到命令模式,即按键盘上esc,然后输入:wq

重新启动crond,执行:

/etc/rc.d/init.d/rcond restart