1. 安装说明

1.1.  系统版本及软件版本

[root@umw1 ~]# cat /etc/redhat-release

Red Hat Enterprise Linux AS release 4 (Nahant Update 5)

[root@umw1 ~]# uname -a

Linux umw1 2.6.9-55.ELsmp #1 SMP Fri Apr 20 17:03:35 EDT 2007 i686 i686 i386 GNU/Linux

[root@umw1 ~]#

  

  Mysql版本:mysql-5.0.37.tar.gz

 

1.2.  安装步骤说明

   tar xvzf mysql-5.0.37.tar.gz

     shell> groupadd mysql

     shell> useradd -g mysql mysql

     shell> gunzip < mysql-5.0.37.tar.gz | tar -xvf -

     shell> cd mysql-5.0.37

     shell> ./configure --prefix=/usr/local/mysql --datadir=/data/mydb --with-charset=utf8 --with-extra-charsets=latin1,latin2,latin5,latin7,gb2312,gbk --with-xcharset=all

     shell> make

     shell> make install

     shell> cp support-files/my-medium.cnf /data/my.cnf

     shell> cd /usr/local/mysql

     shell> bin/mysql_install_db --user=mysql

     shell> chown -R root  .

     shell> chown -R mysql /data

 

系统启动时自动运行:

# ./mysqladmin -u root password ‘password’ #使用mysqladmin
root的口令为 'password’

# cp support-files/mysql.server /etc/rc.d/init.d/mysqld
# chkconfig --add mysqld

     shell> chgrp -R mysql .

ntsysv设置使mysql每次启动都能自动运行。
至此mysql安装完毕,你可以这样起动你的mysql服务
# /etc/rc.d/init.d/mysqld start


2. 配置说明

一个mysql配置多个端口 三台服务器调整操作均为下

当前默认端口3306的配置和启动方式:

/data/my.cnf中的配置:

[client]
port        = 3306
socket      = /tmp/mysql.sock
 
[mysqld]
port        = 3306
socket      = /tmp/mysql.sock

通过如下方式启动或者终止进程

#/usr/local/mysql/bin/mysqld_safe --defaults-file=/data/my.cnf 
#/usr/local/mysql/bin/mysqladmin –uroot –p –S/tmp/mysql.sock shutdown ----------- ------------通过指定配置文件或者是启动文件的的路径来确定启动或者终止相对应端口进程)

配置3307端口mysql

创建3307数据库
#cd /home/mysql-5.0.37/scripts
#./mysql_install_db –datadir=/data/mydb2   
修改3307端口mysql的配置文件          
#cp /data/my.cnf  /data/my2.cnf  
修改/data/my2.cnf中的配置
 
[mysqld]
port           = 3307
socket         = /tmp/mysql2.sock
datadir        = /data/mydb2/
innodb_data_home_dir = /data/mydb2
innodb_log_group_home_dir = /data/mydb2

通过如下方式启动或者终止进程

#/usr/local/mysql/bin/mysqld_safe --defaults-file=/data/my2.cnf 
#/usr/local/mysql/bin/mysqladmin –uroot –p –S/tmp/mysql2.sock shutdown ----------- ------------通过指定配置文件或者是启动文件的的路径来确定启动或者终止相对应端口进程)
#tar zcf uworld.tar.gz  /data/mydb/uwolrd
# tar zcf home.tar.gz /data/mydb/home
#scp *.tar.gz root@192.168.24.201:/data/
#scp *.tar.gz root@192.168.2032:/data/   把要同步的数据库打包传到从服务器上
在从服务器上
#tar zcf /data/uworld.tar.gz /data/mydb/
#tar zcf /data/home.tar.gz /data/mydb2/  把从主数据上copy的库解压缩到指定位置
进入数据库中
 
 
配置slave主从服务
配置192.168.24.202主服务器
分别在/data/my.cnf  /data/my2.cnf中添加     
server-id=1
log-bin = mysql-bin.log
重启数据库生效

在主服务器上为复制设置一个连接账户。该账户必须授予REPLICATION SLAVE权限。如果

账户仅用于复制(推荐这样做),则不需要再授予任何其它权限
#/usr/local/mysql/bin/mysql –u root –p –S/tmp/mysql.sock  进入3306端口的数据库中给两台从服务器开权限
> GRANT REPLICATION SLAVE ON *.* TO 'root'@'192.168.24.201'IDENTIFIED BY '123456'
> GRANT REPLICATION SLAVE ON *.* TO 'root'@'192.168.20.32'IDENTIFIED BY '123456'
#/usr/local/mysql/bin/mysql –u root –p –S/tmp/mysql2.sock  进入3307端口的数据库中给两台从服务器开权限
192.168.24.201 3306的配置文件添加以下
server-id=3                         指定从服务id 不能跟主服务上的一样
log-bin = mysql-bin.log                           设定生成log的文件名
master-host=192.168.24.202                     指定主服务器的ip地址
master-user=root                                     指定同步用户
master-password=123456                         指定同步密码
master-port=3306                                    指定同步端口
master-connect-retry=60                          断点重新连接时间
replicate-ignore-db=mysql                      屏蔽对mysql的同步
replicate-do-db=uworld                            所要同步的数据库的名称(可有多个库,以‘,’隔开)
192.168.24.201 3307的配置文件添加以下
server-id=3
log-bin = mysql-bin.log
master-host=192.168.24.202
master-user=root
master-password=123456
master-port=3307
master-connect-retry=60
replicate-ignore-db=mysql
replicate-do-db=uworld
192.168.20.32的两个端口配置192.168.24.201(注意要修改server-id=2)重启数据库
 
>slave stop;
>change matser to master_log_file=’mysql-bin.000005’; 
>change master to master_log_pos=98; (这个值是在主服务器上执行show master status得来)
>slave start
 
然后再主服务器上删除 或者插入表 测试看同步是否成功