首页 > 代码库 > 编译安装MySQL搭建多实例

编译安装MySQL搭建多实例

上一篇博客介绍的是:通过 MySQL二进制包搭建多实例服务http://aby028.blog.51cto.com/5371905/1891423

现在介绍通过编译安装MySQL搭建多实例

 

实验中所用到的软件包:http://down.51cto.com/data/2281098

环境介绍

技术分享

编译安装mysql前需要解决依赖包问题

yum -y install ncurses-devel libaio-devel

技术分享

安装 lrzsz 这个软件,和系统无关的一个软件。安装后可以通过xshell拖拽软件,方便上传而已

yum -y install lrzsz

技术分享

创建一个存放软件的目录哈

mkdir -p /home/yuci/tools

技术分享

安装 cmake ,mysql的编译就是通过它实现的

tar zxf cmake-2.8.8.tar.gz

cd cmake-2.8.8

./configure && gmake && gmake install

技术分享

创建一个 mysql 用户

useradd -s /sbin/nologin -M mysql      

id mysql

技术分享

编译安装 mysql

tar zxf mysql-5.5.23.tar.gz

cd mysql-5.5.23

##############编译安装参数##########################

cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.5.23 \

-DMYSQL_DATADIR=/application/mysql-5.5.23/data \

-DMYSQL_UNIX_ADDR=/application/mysql-5.5.23/tmp/mysql.sock \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DEXTRA_CHARSETS=gks,gb2312,utf8,ascii \

-DENABLED_LOCAL_INFILE=ON \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_FEDERATED_STORAGE_ENGINE=1 \

-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \

-DWITHOUT_PARTITION_STORAGE_ENGINE=1 \

-DWITH_FAST_MUTEXES=1 \

-DWITH_ZLIB=bundled \

-DENABLED_LOCAL_INFILE=1 \

-DWITH_READLINE=1 \

-DWITH_EMBEDDED_SERVER=1 \

-DWITH_DBBUG=0

#####################################################

make && make install      
技术分享

给 mysql 创建软连接

ln -s /application/mysql-5.5.23/ /application/mysql      

技术分享

mkdir -p /data/{3306,3307}/data

技术分享

yum -y install tree dos2unix nmap

技术分享

tree /data/

技术分享

切到 / 目录下,导入脚本,直接覆盖比较方便。后面我会贴出脚本的内容

unzip data.zip

技术分享

将/data目录属主属组授权为mysql用户并检查

chown -R mysql:mysql /data

find /data -type f -name "my.cnf" | xargs ls -l

技术分享

更改 /data/mysql 的权限更改为700

find /data -type f -name "mysql" | xargs chmod 700

find /data -type f -name "mysql" | xargs ls -l      

技术分享

ln -s /application/mysql/bin/* /usr/local/bin

技术分享

ls -l `which mysql`

技术分享

分别初始化 MySQL 数据库

cd /application/mysql/scripts/

./mysql_install_db --basedir=/application/mysql/ --datadir=/data/3306/data/ --user=mysql

./mysql_install_db --basedir=/application/mysql/ --datadir=/data/3307/data/ --user=mysql

启动 MySQL 服务

/data/3306/mysql start

/data/3307/mysql start

检查端口是否启动

netstat -lntup | grep 330

技术分享

登陆 MySQL

mysql -S /data/3306/mysql.sock

mysql -S /data/3307/mysql.sock

给 MySQL 设定密码

mysqladmin -uroot password 123456 -S /data/3306/mysql.sock      

mysqladmin -uroot password 123456 -S /data/3307/mysql.sock

技术分享

尝试登陆 MySQL

mysql -uroot -p123456 -S /data/3306/mysql.sock

mysql -uroot -p123456 -S /data/3307/mysql.sock      

本文出自 “LULU” 博客,请务必保留此出处http://aby028.blog.51cto.com/5371905/1892250

编译安装MySQL搭建多实例