378 发表于 2018-10-11 07:25:44

编译安装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

页: [1]
查看完整版本: 编译安装MySQL搭建多实例