1.4 多实例安装步骤
1、安装依赖,下载软件包
yum -y install ncurses-devel libaio-deve #安装依赖包 yum -y install cmake #编译MySQL需要的软件 useradd -s /sbin/nologin -M mysql #创建用户 mkdir /home/oldboy/tools #规范软件包安装路径 cd /home/oldboy/tools wget http://mirrors.sohu.com/mysql/MySQL-5.5/mysql-5.5.49.tar.gz tar xf mysql-5.5.49.tar.gz #解压MySQLcd mysql-5.5.49
2、编译MySQL源码包
编译参数
cmake -DCMAKE_INSTALL_PREFIX=/application/mysql-5.5.32 \ -DMYSQL_DATADIR=/application/mysql-5.5.32/data \ -DMYSQL_UNIX_ADDR=/application/mysql-5.5.32/tmp/mysql.sock \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii \ -DENABLED_LOOCAL_INFILE=ON \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_FEDERATED_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \ -DWITHOUT_PARRTITION_STORAGE_ENGINE=1 \ -DWITH_FAST_MUTEXES=1 \ -DWITH_ZLIB=bundled \ -DENABLED_LOCAL_INFILE=1 \ -DWITH_READLINE=1 \ -DWITH_EMBEDDED_SERVER=1\ -DWITH_DEBUG=0
此步是生成Makefile文件的步骤接下来进行安装
make && make install ln -s /application/mysql-5.5.49 /application/mysql #制作软连接 mkdir -p /data/{3306,3307}/data #创建多实例目录
===========================================
这里的data安装使用下载 下载链接:http://pan.baidu.com/s/1pKZ4Li7
[root@db01 /]# find /data -type f -name "mysql"|xargs chmod +x [root@db01 /]# find /data -type f -name "mysql"|xargs ls -l -rwxr-xr-x 1 root root 1307 Jul 152013 /data/3306/mysql -rwxr-xr-x 1 root root 1307 Jul 212013 /data/3307/mysql [root@db01 /]# chown -R mysql.mysql /data/ [root@db01 /]# cd /application/mysql/scripts/ [root@db01 scripts]# ./mysql_install_db --basedir=/application/mysql/ --datadir=/data/3306/data/ --user=mysql [root@db01 scripts]# ./mysql_install_db --basedir=/application/mysql/ --datadir=/data/3307/data/ --user=mysql
<h1 id=”wiz_toc_0″>MySQL多实例配置及启动
启动MySQL 启动方式和原来不同
[root@db02 scripts]# /data/3306/mysql start Starting MySQL... [root@db02 scripts]# /data/3307/mysql start Starting MySQL...
<h1 id=”wiz_toc_1″>启动完成进行检查
[root@db02 scripts]# netstat -lntup|grep 330 tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 14480/mysqld tcp 0 0 0.0.0.0:3307 0.0.0.0:* LISTEN 15198/mysqld cp /application/mysql/bin/* /usr/local/sbin/ 登录的时候需要指定sock mysql -uroot -S /data/3306/mysql.sock mysql -uroot -S /data/3307/mysql.sock
常见错误问题:
错误问题:
1、 对主机名做解析
2、 tmp目录权限1777
3、 如果启动MySQL多实例没有查到端口就稍等一会
4、 日志.err结尾的日志进行排错
<h1 id=”wiz_toc_2″>设置开机启动
echo "mysql multi instances" >>/etc/rc.local echo "/data/3306/mysql start" >>/etc/rc.local echo "/data/3307/mysql start" >>/etc/rc.local
下面我们自己添加一个多实例
<h1 id=”wiz_toc_3″>添加多实例3308
[root@db02 data]# mkdir /data/3308/data -p [root@db02 data]# \cp /data/3306/my.cnf /data/3308 [root@db02 data]# \cp /data/3306/mysql /data/3308 [root@db02 3308]# sed -i 's/3306/3308/g' my.cnf mysql [root@db02 3308]# sed -i 's/server-id = 1/server-id = 8/g' /data/3308/my.cnf [root@db02 3306]# chown -R mysql.mysql ../3308/
<h1 id=”wiz_toc_4″>授权
[root@db02 3306]# chmod 700 /data/3308/mysql [root@db02 3308]# cd /application/mysql/scripts/ [root@db02 scripts]#./mysql_install_db --basedir=/application/mysql/ --datadir=/data/3308/data/ --user=mysql [root@db02 3308]# chmod +x /data/3308/mysq [root@db02 scripts]# /data/3308/mysql start Starting MySQL... [root@db02 scripts]# mysql -S /data/3308/mysql.sock
5 MySQL远程连接
mysql -uroot -poldboy -h 10.0.0.7 -P 端口号 -P 为端口参数
6 因为脚本里面设置的密码是oldboy 所以如果我们不设置将无法停止MySQL
[root@db02 scripts]# mysqladmin password oldboy -S /data/3306/mysql.sock [root@db02 scripts]# mysqladmin password oldboy -S /data/3307/mysql.sock [root@db02 scripts]# mysqladmin password oldboy -S /data/3308/mysql.sock [root@db02 scripts]# mysql -uroot -poldboy123 -S /data/3306/mysql.sock
本文转自 tianya1993 51CTO博客,原文链接:http://blog.51cto.com/dreamlinux/1835069,如需转载请自行联系原作者