在上篇文章 中,我们介绍了MySQL源码安装的方法。
源码安装虽然有着更加灵活和更加优化等诸多优势。但源码编译安装部署的过程相对复杂,而且整个过程所花费的时间很长。对于一整套系统和硬件完全一样的机器,其实完全可以只在一台机器源码安装,然后打包好编译出来的二进制版本,拷贝到其他机器解压,直接进行一些配置即可。本篇文章就来介绍一下二进制版本安装配置MySQL的整个过程。
1.上传二进制版本
首先要将上篇文章中5.1小节中,打包好的MySQL二进制版本mysql-5.6.30.tar.gz
上传到/usr2目录下。
2.规划数据存放目录
这里系统是使用lvm管理的,vg名称vg00,添加一个名称为lvdata的lv,大小设定100G,然后在系统创建/data目录,将新建的lvdata挂载到/data目录下。具体操作如下:
--创建lvdatalvcreate -L 100g -n lvdata vg00--格式化为ext4文件系统 mkfs.ext4 /dev/mapper/vg00-lvdata --添加为开机自动挂载的目录 vi /etc/fstab 加入一行: /dev/mapper/vg00-lvdata /data ext4 defaults 1 2 --创建/data目录并挂载 mkdir -p /data && mount -a
3.解压二进制版本的MySQL
切换到根目录下,解压二进制版本的MySQL:
cd / && tar zxvf /usr2/mysql-5.6.30.tar.gz
4.添加组和用户
添加组mysql和用户mysql:
groupadd mysqluseradd -g mysql mysql
5.配置limits.conf
vi /etc/security/limits.conf,在文件末尾添加:
mysql soft nproc 2047mysql hard nproc 16384mysql soft nofile 1024mysql hard nofile 65536
6.修改目录所有者
修改MySQL软件所在目录拥有者:
chown -R mysql.mysql /usr/local/mysql
7.配置环境变量
配置mysql用户的环境变量:
需要su - mysql
切换到mysql用户下,vi ~/.bash_profile export LANG=zh_CN.GB18030export PATH=/usr/local/mysql/bin:$PATH
8.创建数据库服务
8.1 创建前准备:
# mkdir -p /data/mysqldata/{3306/{data,tmp,binlog},backup,scripts}# chown -R mysql.mysql /data/mysqldata# su - mysql$ vi /data/mysqldata/3306/my.cnf
8.2 MySQL的my.cnf配置文件内容如下:
[client]port = 3306socket = /data/mysqldata/3306/mysql.sock#The MySQL Server[mysqld]port = 3306user = mysqlsocket = /data/mysqldata/3306/mysql.sockpid-file = /data/mysqldata/3306/mysql.pidbasedir = /usr/local/mysqldatadir = /data/mysqldata/3306/datatmpdir = /data/mysqldata/3306/tmpopen_files_limit = 10240explicit_defaults_for_timestampsql_mode = NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES#Buffermax_allowed_packet = 256Mmax_heap_table_size = 256Mnet_buffer_length = 8ksort_buffer_size = 2Mjoin_buffer_size = 4Mread_buffer_size = 2Mread_rnd_buffer_size = 16M#Loglog-bin = /data/mysqldata/3306/binlog/mysql-binbinlog_cache_size = 32Mmax_binlog_cache_size = 512Mmax_binlog_size = 512Mbinlog_format = mixedlog_output = FILElog-error = ../mysql-error.logslow_query_log = 1slow_query_log_file = ../slow_query.loggeneral_log = 0general_log_file = ../general_query.logexpire-logs-days = 14#InnoDBinnodb_data_file_path = ibdata1:2048M:autoextendinnodb_log_file_size = 256Minnodb_log_files_in_group = 3innodb_buffer_pool_size = 1024M[mysql]no-auto-rehashprompt = (\u@\h)[\d]>\_default-character-set = gbk
8.3 初始化MySQL数据库:
$ /usr/local/mysql/scripts/mysql_install_db --datadir=/data/mysqldata/3306/data --basedir=/usr/local/mysql
8.4 启动数据库服务:
mysqld_safe --defaults-file=/data/mysqldata/3306/my.cnf &
总结:其实在配置完二进制版本的MySQL后发现,整个过程跟源码安装并没有什么区别,只是省去了最麻烦和最耗时的MySQL源码的编译和安装过程。非常适合相同硬件和系统,对MySQL服务的快速部署。
转:http://www.cnblogs.com/jyzhao/p/5551166.html