ITPub博客

首页 > 数据库 > MySQL > mysqlIO分离安装记录

mysqlIO分离安装记录

原创 MySQL 作者:jasperjohn 时间:2014-05-23 11:14:55 1 删除 编辑
《IO分离独立安装mysql软件和独立配置数据库文件》
mysql版本:mysql-5.5.29.tar.gz
目标:独立IO,独立服务,独立mysql服务,独立数据库

一. 为了统一安装的版本,先卸载已经安装的mysql
卸载已经安装的mysql
    1. 查找已安装的myslq 版本:
       #rpm -q mysql
       在屏幕上将显示已安装的mysql包名如:mysql-5.0.77-4.el5_5.3
       如果通过该命令,提示没有安装mysql,而你确定已安装,可以使用下面命令,尝试一下:
       #rpm -qa | grep -i mysql
        MySQL-server-5.5.11-1.rhel5
  2.
强制卸载(将要卸载的必须是上面查询到的mysql的全称包括版本号,此处是在无法正常卸载时不得已的操作,强制卸载,必须用参数--no
deps):
        #rpm -e --nodeps mysql-5.0.77-4.el5_5.3
  3.成功卸载,系统不提示任何信息
  4、业务要求
#---------------------------------#
mysql_server_name ||db_name      ||
---------------------------------##
nb                ||test1       ||
---------------------------------##
nbm                  ||test2          ||
---------------------------------##
cm                                ||test3             ||
---------------------------------##
cml                              ||test4  ||
---------------------------------##
cp                                ||test5||
---------------------------------##
zd                                ||test6      ||
#---------------------------------#        
二. 系统分区要求:
 2.1:系统分区要求;    
     /tmp 2G
     /swap 16G
     /db1 40G  ->test1
     /db2 40G  ->test2
     /db3 40G  ->test3
     /db4 30G  ->test4
     /db5 30G  ->test5s
     /db6 10G  ->test6
      /boot  800MB
      / 剩下的给根分区
IP地址:172.16.2.81/82/83
主机名:dbmaster1,dbmaster2,dbslave1      

2.2安装cmake-2.8.4,到默认的路径即可

#cd /opt/mysqlsoft/cmake-2.8.4
#yum -y install gcc
#yum -y install gcc-c++
#./configure
#gmake
#make install
2.3建相关用户和目录:
# groupadd mysql
# useradd -g mysql mysql
mkdir /opt/mysqlsoft //存放mysqls软件
mkdir -p /db1/data /db2/data /db3/data /db4/data /db5/data /db6/data     //存放6个数据库的数据文件
mkdir -p /db1/etc /db2/etc /db3/etc /db4/etc /db5/etc /db6/etc          //存放6个数据库的配置文件
mkdir -p /db1/tmp /db2/tmp /db3/tmp /db4/tmp /db5/tmp /db6/tmp         //存放6个数据库的socket文件
2.4设置目录权限:
# chown -R root:mysql /db1 /db2 /db3 /db4 /db5 /db6 //把6个目录中所有文件的所有者所有者设为root,所属组为mysql

# chown -R mysql:mysql /db1/data /db2/data /db3/data /db4/data /db5/data /db6/data //把6个目录中data子目录所有文件的所有者所有者设为mysql,所属组为mysql

三. 安装第一个mysql (test1)
3.1端口:3306 ,mysql1:/etc/my1.cnf ,服务名:nb
# cd /opt/mysqlsoft
# tar -zxvf mysql-5.5.29.tar.gz
# cd mysql-5.5.29
采用Cmake去安装mysql

cmake . -DCMAKE_INSTALL_PREFIX=/db1 -DINSTALL_DATADIR=/db1/data -DSYSCONFDIR=/db1/etc -DMYSQL_UNIX_ADDR=/db1/tmp/mysql1.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=utf8 -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306

#make
#make install


3.2、配置文件及服务
#cd /db1
# cp support-files/my-large.cnf /db1/etc/my1.cnf //这个配置仅适合大内存系统

cp support-files/mysql.server /etc/rc.d/init.d/nb

#chmod a+x /etc/rc.d/init.d/nb   //赋予该文件执行权限

# chkconfig --add nb
# chkconfig nb on
# chkconfig nb --list
#


配置mysql1
vim /etc/rc.d/init.d/nb

修改下面的内容:
在$bindir/mysqld_safe中添加--defaults-file=/db1/etc/my1.cnf:
找到:#conf=/etc/my.cnf,替换为下面的内容
  conf=/db1/etc/my1.cnf
找到: $bindir/mysqld_safe 替换为下面的内容:
 
 在 $bindir/mysqld_safe 后面添加--defaults-file=/db1/etc/my1.cnf

****必须执行下面的一步:

scripts/mysql_install_db  --defaults-file=/db1/etc/my1.cnf --user=mysql --basedir=/db1 --datadir=/db1/data
配置my1.cnf
vim /etc/my1.cnf修改相关的端口、socket

    [client]
    #password       = your_password
    port            = 3306
    socket          = /db1/tmp/mysql1.sock
  default-character-set=utf8
    # The MySQL server
    [mysqld]
    port            = 3306
    socket          = /db1/tmp/mysql1.sock
  character_set_server=utf8
参考:配置文件和启动服务文件可以复制到另外的机器.
四. 安装第二个mysql(test2)
4.1 mysql2使用3307端口,配置文件为:/db2/etc/my2.cnf 服务名:nbm

# cd /opt/mysqlsoft/mysql-5.5.29
需要删除前一个数据库安装的缓存文件:

rm -f  CMakeCache.txt

采用Cmake去安装mysql

cmake . -DCMAKE_INSTALL_PREFIX=/db2 -DINSTALL_DATADIR=/db2/data -DSYSCONFDIR=/db2/etc -DMYSQL_UNIX_ADDR=/db2/tmp/mysql2.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=utf8 -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3307


# make
# make install


4.2、设置目录权限

# cd /db2

# chown -R root:mysql . //把当前目录中所有文件的所有者所有者设为root,所属组为mysql

# chown -R mysql:mysql data
 

4.3、配置文件及服务

# cp support-files/my-large.cnf /db2/etc/my2.cnf //这个配置仅适合大内存系统



//初始化系统表,这一步很重要

cp support-files/mysql.server /etc/rc.d/init.d/nbm

#chmod a+x /etc/rc.d/init.d/nbm   //赋予该文件执行权限

# chkconfig --add nbm
# chkconfig nbm on
# chkconfig nbm --list
#


配置nbm
vim /etc/rc.d/init.d/nbm

修改下面的内容:
在$bindir/mysqld_safe中添加--defaults-file=/db2/etc/my2.cnf:
找到:#conf=/etc/my.cnf,替换为下面的内容
  conf=/db2/etc/my2.cnf
找到: $bindir/mysqld_safe 替换为下面的内容:
 
  在 $bindir/mysqld_safe 后面添加--defaults-file=/db2/etc/my1.cnf


****必须执行下面的一步:
#scripts/mysql_install_db  --defaults-file=/db2/etc/my2.cnf --user=mysql --basedir=/db2 --datadir=/db2/data  //初始化数据库

配置my2.cnf
vim /etc/my2.cnf修改相关的端口、socket

    [client]
    #password       = your_password
    port            = 3307
    socket          = /db2/tmp/mysql2.sock
  default-character-set=utf8
    # The MySQL server
    [mysqld]
    port            = 3307
    socket          = /db2/tmp/mysql2.sock
  character_set_server=utf8

五.  安装第3个mysql (test3)
5.1 基本要求
mysql3使用3308端口,配置文件为:/etc/my3.cnf 服务名:cm

5.2 安装数据库软件
# cd /opt/mysqlsoft/mysql-5.5.29
需要删除前一个数据库安装的缓存文件:

rm -f  CMakeCache.txt

采用Cmake去安装mysql

cmake . -DCMAKE_INSTALL_PREFIX=/db3 -DINSTALL_DATADIR=/db3/data -DSYSCONFDIR=/db3/etc -DMYSQL_UNIX_ADDR=/db3/tmp/mysql3.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=utf8 -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3308

# make
# make install


5.3、设置目录权限

# cd /db3

# chown -R root:mysql . //把当前目录中所有文件的所有者所有者设为root,所属组为mysql

# chown -R mysql:mysql data
 

5.4、配置文件及服务

# cp support-files/my-large.cnf etc/my3.cnf //这个配置仅适合大内存系统

//初始化系统表,这一步很重要

cp support-files/mysql.server /etc/rc.d/init.d/cm

#chmod a+x /etc/rc.d/init.d/cm   //赋予该文件执行权限

# chkconfig --add cm
# chkconfig cm on
# chkconfig cm --list
#


5.5、配置cm服务文件
vim /etc/rc.d/init.d/cm
修改下面的内容:

在$bindir/mysqld_safe中添加--defaults-file=/db3/etc/my3.cnf:
    找到:#conf=/etc/my.cnf,替换为下面的内容
  conf=/db3/etc/my3.cnf
 找到: $bindir/mysqld_safe 替换为下面的内容:
 
 在 $bindir/mysqld_safe 后面添加--defaults-file=/db3/etc/my3.cnf

#scripts/mysql_install_db  --defaults-file=/db3/etc/my3.cnf --user=mysql --basedir=/db3 --datadir=/db3/data
配置my3.cnf
vim /etc/my3.cnf修改相关的端口、socket

    [client]
    #password       = your_password
    port            = 3308
    socket          = /db3/tmp/mysql3.sock
    default-character-set=utf8
    # The MySQL server
    [mysqld]
    port            = 3308
    socket          = /db3/tmp/mysql3.sock
    character_set_server=utf8



六.  安装第4个mysql (test4)
6.1 基本要求
mysql4使用3309端口,配置文件为:/db4/etc/my4.cnf 服务名:cml

6.2 安装数据库软件
# cd /opt/mysqlsoft/mysql-5.5.29
需要删除前一个数据库安装的缓存文件:

rm -f  CMakeCache.txt

采用Cmake去安装mysql

cmake . -DCMAKE_INSTALL_PREFIX=/db4 -DINSTALL_DATADIR=/db4/data -DSYSCONFDIR=/db4/etc -DMYSQL_UNIX_ADDR=/db4/tmp/mysql4.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=utf8 -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3309

# make
# make install


6.3、设置目录权限

# cd /db4

# chown -R root:mysql . //把当前目录中所有文件的所有者所有者设为root,所属组为mysql

# chown -R mysql:mysql data tmp
 

6.4、配置文件及服务

# cp support-files/my-large.cnf /db4/etc/my4.cnf //这个配置仅适合大内存系统



//初始化系统表,这一步很重要

cp support-files/mysql.server /etc/rc.d/init.d/cml

#chmod a+x /etc/rc.d/init.d/cml   //赋予该文件执行权限

# chkconfig --add cml
# chkconfig cml on
# chkconfig cml --list
#


6.5、配置cml服务文件
vim /etc/rc.d/init.d/cml

修改下面的内容:

在$bindir/mysqld_safe中添加--defaults-file=/db4/etc/my4.cnf:
    找到:#conf=/etc/my.cnf,替换为下面的内容
  conf=/db4/etc/my4.cnf
 找到: $bindir/mysqld_safe 替换为下面的内容:
 
  $bindir/mysqld_safe --defaults-file=/db4/etc/my4.cnf --datadir="$datadir" --pid-file="$mysqld_pid_file_path" $other_args
>/dev/null 2>&1 &

#scripts/mysql_install_db  --defaults-file=/db4/etc/my4.cnf --user=mysql --basedir=/db4 --datadir=/db4/data
配置my4.cnf
vim /db4/etc/my4.cnf修改相关的字符集

    [client]
    #password       = your_password
    port            = 3309
    socket          = /db4/tmp/mysql4.sock
    default-character-set=utf8
    # The MySQL server
    [mysqld]
    port            = 3309
    socket          = /db4/tmp/mysql4.sock
    character_set_server=utf8


七.  安装第5个mysql (test5)
7.1 基本要求
mysql5使用3310端口,配置文件为:/db5/etc/my5.cnf 服务名:cp

7.2 安装数据库软件
# cd /opt/mysqlsoft/mysql-5.5.29
需要删除前一个数据库安装的缓存文件:

rm -f  CMakeCache.txt

采用Cmake去安装mysql

cmake . -DCMAKE_INSTALL_PREFIX=/db5 -DINSTALL_DATADIR=/db5/data -DSYSCONFDIR=/db5/etc -DMYSQL_UNIX_ADDR=/db5/tmp/mysql5.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=utf8 -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3310

# make
# make install


7.3、设置目录权限

# cd /db5

# chown -R root:mysql . //把当前目录中所有文件的所有者所有者设为root,所属组为mysql

# chown -R mysql:mysql data tmp
 

7.4、配置文件及服务

# cp support-files/my-large.cnf /db5/etc/my5.cnf //这个配置仅适合大内存系统



cp support-files/mysql.server /etc/rc.d/init.d/cp

#chmod a+x /etc/rc.d/init.d/cp   //赋予该文件执行权限

# chkconfig --add cp
# chkconfig cp on
# chkconfig cp --list
#


7.5、配置cp服务文件
vim /etc/rc.d/init.d/cp

修改下面的内容:

在$bindir/mysqld_safe中添加--defaults-file=/db5/etc/my5.cnf:
    找到:#conf=/etc/my.cnf,替换为下面的内容
  conf=/db5/etc/my5.cnf
 找到: $bindir/mysqld_safe 替换为下面的内容:
 
  $bindir/mysqld_safe --defaults-file=/db5/etc/my5.cnf --datadir="$datadir" --pid-file="$mysqld_pid_file_path" $other_args
>/dev/null 2>&1 &

配置my5.cnf
vim etc/my5.cnf修改相关的字符集

    [client]
    port            = 3310
    socket          = /db5/tmp/mysql5.sock
    default-character-set=utf8
    # The MySQL server
    [mysqld]
    port            = 3310
    socket          = /db5/tmp/mysql5.sock
    character_set_server=utf8

#scripts/mysql_install_db  --defaults-file=/db5/etc/my5.cnf --user=mysql --basedir=/db5 --datadir=/db5/data

//初始化系统表,这一步很重要

八.  安装第6个mysql (test6)
8.1 基本要求
mysql6使用3311端口,配置文件为:/db6/etc/my6.cnf 服务名:zd



8.2 安装数据库软件
# cd /opt/mysqlsoft/mysql-5.5.29
需要删除前一个数据库安装的缓存文件:

rm -f  CMakeCache.txt

采用Cmake去安装mysql

cmake . -DCMAKE_INSTALL_PREFIX=/db6 -DINSTALL_DATADIR=/db6/data -DSYSCONFDIR=/db6/etc -DMYSQL_UNIX_ADDR=/db6/tmp/mysql6.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=utf8 -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3311

# make
# make install


8.3、设置目录权限

# cd /db6

# chown -R root:mysql . //把当前目录中所有文件的所有者所有者设为root,所属组为mysql

# chown -R mysql:mysql data tmp
 

8.4、配置文件及服务

# cp support-files/my-large.cnf /db6/etc/my6.cnf //这个配置仅适合大内存系统



cp support-files/mysql.server /etc/rc.d/init.d/zd

#chmod a+x /etc/rc.d/init.d/zd   //赋予该文件执行权限

# chkconfig --add zd
# chkconfig zd on
# chkconfig zd --list
#


8.5、配置mysql6服务文件
vim /etc/rc.d/init.d/zd

修改下面的内容:

在$bindir/mysqld_safe中添加--defaults-file=/db6/etc/my6.cnf:
    找到:#conf=/etc/my.cnf,替换为下面的内容
  conf=/db6/etc/my6.cnf
 找到: $bindir/mysqld_safe 替换为下面的内容:
 
  $bindir/mysqld_safe --defaults-file=/db6/etc/my6.cnf --datadir="$datadir" --pid-file="$mysqld_pid_file_path" $other_args
>/dev/null 2>&1 &



配置my6.cnf
vim etc/my6.cnf修改相关的字符集

    [client]
    port            = 3311
    socket          = /db5/tmp/mysql6.sock
    default-character-set=utf8
    # The MySQL server
    [mysqld]
    port            = 3311
    socket          = /db5/tmp/mysql6.sock
    character_set_server=utf8


注意;    
#scripts/mysql_install_db  --defaults-file=/db6/etc/my6.cnf --user=mysql --basedir=/db6 --datadir=/db6/data

//初始化系统表,这一步很重要

九. 其他服务器命令行客户端链接mysql
6.1数据库启动方式:

配置mysql软件环境变量:(只需执行一次)      
echo "export PATH=$PATH:/db1/bin" >> /etc/profile      
source /etc/profile      
通过服务的形式启动数据库
service nb start
service nbm start
service cm start
service cml start
service cp start
service zd start
6.2客户端登录数据库:
mysql -uroot -ptest -h test -P 3306 -S /db1/tmp/mysql1.sock
mysql -uroot -ptest -h test -P 3307 -S /db2/tmp/mysql2.sock
mysql -uroot -ptest -h test -P 3308 -S /db3/tmp/mysql3.sock
mysql -uroot -ptest -h test -P 3309 -S /db4/tmp/mysql4.sock
mysql -uroot -ptest -h test -P 3310 -S /db5/tmp/mysql5.sock
mysql -uroot -ptest -h test -P 3311 -S /db6/tmp/mysql6.sock  

十.业务要求      
数据库要求:(6个库分别建在6个数据库软件里)   
   
mysql数据库新架构会建立以下几个库:
nb->mysql1.sock-> test1
nbm->mysql2.sock-> test2
cm->mysql3.sock-> test3
cml->mysql4.sock-> test4
cp->mysql4.sock->test5
zd->mysql6.sock-> test6

6个库密码统一设置和创建业务数据库:
mysql -uroot -S /db1/tmp/mysql1.sock
#add_dba:
GRANT ALL PRIVILEGES ON *.* TO root@localhost
           IDENTIFIED BY 'test' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO bak@localhost
           IDENTIFIED BY 'test' WITH GRANT OPTION;
flush privileges;
create database test1;
mysql -uroot -S /db2/tmp/mysql2.sock
#add_dba:
GRANT ALL PRIVILEGES ON *.* TO root@localhost
           IDENTIFIED BY 'test' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO bak@localhost
           IDENTIFIED BY 'test' WITH GRANT OPTION;
           flush privileges;
           create database test2;
mysql -uroot -S /db3/tmp/mysql3.sock
#add_dba:
GRANT ALL PRIVILEGES ON *.* TO root@localhost
           IDENTIFIED BY 'test' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO bak@localhost
           IDENTIFIED BY 'test' WITH GRANT OPTION;     
           flush privileges;   
           create database test3;
mysql -uroot -S /db4/tmp/mysql4.sock
#add_dba:
GRANT ALL PRIVILEGES ON *.* TO root@localhost
           IDENTIFIED BY 'test' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO bak@localhost
           IDENTIFIED BY 'test' WITH GRANT OPTION;     
           flush privileges;
           create database test4;
mysql -uroot -S /db5/tmp/mysql5.sock
#add_dba:
GRANT ALL PRIVILEGES ON *.* TO root@localhost
           IDENTIFIED BY 'test' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO bak@localhost
           IDENTIFIED BY 'test' WITH GRANT OPTION;     
           flush privileges;   
           create database test5;    
mysql -uroot -S /db6/tmp/mysql6.sock
#add_dba:
GRANT ALL PRIVILEGES ON *.* TO root@localhost
           IDENTIFIED BY 'test' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO bak@localhost
           IDENTIFIED BY 'test' WITH GRANT OPTION;     
           flush privileges;     
           create database test6;           
登录数据库:
mysql -ubak -ptest -S /db1/tmp/mysql1.sock
mysql -ubak -ptest -S /db2/tmp/mysql2.sock
mysql -ubak -ptest -S /db3/tmp/mysql3.sock
mysql -ubak -ptest -S /db4/tmp/mysql4.sock
mysql -ubak -ptest -S /db5/tmp/mysql5.sock
mysql -ubak -ptest -S /db6/tmp/mysql6.sock

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14661773/viewspace-1168165/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2011-04-18

  • 博文量
    45
  • 访问量
    160703