Centos7.1 for MySQL5.6.30源码安装及多实例配置
2016-07-13 14:27
996 查看
预备工作: OS:Centos7.1DATABASE: mysql-5.6.30.tar.gz1. 创建mysql帐号 创建用户和用户组
[root@localhost ~]# groupadd mysql [root@localhost ~]# useradd -g mysql mysql [root@localhost ~]# passwd mysql2.验证安装包 解压mysql源码包mysql-5.6.30.tar.gz
[root@localhost ~]# mkdir -p /opt/mysql-5.6/ [root@localhost ~]# tar zxvf mysql-5.6.30.tar.gz -C /opt/mysql-5.6 [root@localhost ~]# cd /opt/mysql-5.6/验证之前是否安装过mysql,若存在mysql相关包,则rpm -e逐个删除(建议先删devel包,再mysql包,最后强制删除libs包)
[root@localhost mysql-5.6]# rpm -qa|grep mysql再验证以下编译必备安装包是否安装:gcc*,gcc-c++*,cmake,autoconf*,automake*,zlib*,ncurses-devel*,libtool*,bison 当缺少相关安装包时,需要通过rpm -ivh ***.rpm或yum install RPM_NAME安装3.源码编译过程
[root@localhost mysql-5.6]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.6 #安装目录 -DWITH_INNOBASE_STORAGE_ENGINE=1 #支持InnoDB引擎 -DWITH-READLINE=1 #支持快捷键 -DEXTRA_CHARSETS=all #安装所有字符集 -DENABLED_LOCAL_INFILE=1 #从本地导入数据 -DWITH_EMBEDDED_SERVER=1 #编译Embedded Mysql库 -DWITH_SSL=bundled # -DDEFAULT_CHARSET=utf8 #默认字符集 [root@localhost mysql-5.6]# make [root@localhost mysql-5.6]# make install [root@localhost mysql-5.6]# ln -s /usr/local/mysql-5.6 /usr/local/mysql4.创建mysql数据目录及/etc/my.cnf 数据存放目录,默认为basedir下的data目录(实际场景下,建议mount专用盘作为data):
[root@localhost mysql-5.6]# cd /usr/local/mysql [root@localhost mysql]# mkdir -p /opt/mysql/data1 [root@localhost mysql]# chown -R mysql.mysql /opt/mysql [root@localhost mysql]# vi /etc/my.cnf [client] port = 3306 socket =/opt/mysql/data1/mysqld.sock [mysqld_safe] user = mysql nice = 0 [mysqld] port = 3306 pid-file = /opt/mysql/data1/mysqld.pid socket = /opt/mysql/data1/mysqld.sock basedir = /usr/local/mysql datadir = /opt/mysql/data1/ tmpdir = /opt/mysql/data1/ log-error = /opt/mysql/data1/mysqld.log slow_query_log =1 slow_query_log_file = /opt/mysql/data1/mysql-slow.log log_bin = /opt/mysql/data1/mysql-bin.log [mysqldump] quick quote-names max_allowed_packet = 16M default-character-set = utf8 [mysql] default-character-set = utf84.初始化mysql建议进入/usr/local/mysql目录下,通过以下方式进行初始化,否则可能会报错
[root@localhost mysql]# ./scripts/mysql_install_db --defaults-file=/etc/my.cnf [root@localhost mysql]# ./bin/mysql_secure_installation5.将mysql服务加入init.d管理建议进入/usr/local/mysql目录下,通过以下方式进行初始化,否则可能会报错
[root@localhost mysql]# cp /bin/mysql.service /etc/init.d/mysql [root@localhost mysql]# chkconfig --add mysql [root@localhost mysql]# chkconfig mysql on [root@localhost mysql]# chkconfig --list同时更改环境变量 vi ~/.bash_profile,在PATH变量后添加:/usr/local/mysql/bin6.启动mysql服务的几种方式mysqld与mysqld_safe的区别在于mysqld_safe宕机后仍能重启
[root@localhost mysql]# service mysql start
[root@localhost mysql]# mysqld_safe --defaults-file=/etc/my.cnf &
[root@localhost mysql]# mysqld --defaults-file=/etc/my.cnf &Mysql多实例安装 上述1-6歩主要安装了使用3306端口的实例,我们同样可以生成其他端口的实例。这里我们通过以下步骤安装3310端口的MySQL实例。1.创建使用3310端口的mysql数据目录及/etc/my3310.cnf
[root@localhost mysql-5.6]# cd /usr/local/mysql [root@localhost mysql]# mkdir -p /opt/mysql/data2 [root@localhost mysql]# vi /etc/my3010.cnf [client] port = 3310 socket =/opt/mysql/data2/mysqld.sock [mysqld_safe] user = mysql nice = 0 [mysqld] port = 3310 pid-file = /opt/mysql/data2/mysqld.pid socket = /opt/mysql/data2/mysqld.sock basedir = /usr/local/mysql datadir = /opt/mysql/data2/ tmpdir = /opt/mysql/data2/ log-error = /opt/mysql/data2/mysqld.log slow_query_log =1 slow_query_log_file = /opt/mysql/data2/mysql-slow.log log_bin = /opt/mysql/data2/mysql-bin.log [mysqldump] quick quote-names max_allowed_packet = 16M default-character-set = utf8 [mysql] default-character-set = utf82.初始化使用3310端口的mysql建议进入/usr/local/mysql目录下,通过以下方式进行初始化,否则可能会报错
[root@localhost mysql]# ./scripts/mysql_install_db --defaults-file=/etc/my3310.cnf [root@localhost mysql]# ./bin/mysql_secure_installation --defaults-file=/etc/my3310.cnf3.编辑多实例mysql的配置文件
[root@localhost mysql]# vi /etc/mysql_multi.cnf [mysqld_multi] mysqld = /usr/local/mysql/bin/mysqld_safe mysqladmin = /usr/local/mysql/bin/mysqladmin [mysqld3306] port = 3306 pid-file = /opt/mysql/data1/mysqld.pid socket = /opt/mysql/data1/mysqld.sock basedir = /usr/local/mysql datadir = /opt/mysql/data1/ tmpdir = /opt/mysql/data1/ log-error = /opt/mysql/data1/mysqld.log slow_query_log =1 slow_query_log_file = /opt/mysql/data1/mysql-slow.log log_bin = /opt/mysql/data1/mysql-bin.log [mysqld3310] [client] port = 3310 socket =/opt/mysql/data2/mysqld.sock [mysqld_safe] user = mysql nice = 0 [mysqld] port = 3310 pid-file = /opt/mysql/data2/mysqld.pid socket = /opt/mysql/data2/mysqld.sock basedir = /usr/local/mysql datadir = /opt/mysql/data2/ tmpdir = /opt/mysql/data2/ log-error = /opt/mysql/data2/mysqld.log slow_query_log =1 slow_query_log_file = /opt/mysql/data2/mysql-slow.log log_bin = /opt/mysql/data2/mysql-bin.log [mysqldump] quick quote-names max_allowed_packet = 16M default-character-set = utf8 [mysql] default-character-set = utf84.启动mysql多实例
[root@localhost mysql]# mysqld_multi --defaults-file=/etc/mysql_multi.cnf start 3306 [root@localhost mysql]# mysqld_multi --defaults-file=/etc/mysql_multi.cnf start 3310本文出自 “大废” 博客,请务必保留此出处http://bigtrash.blog.51cto.com/8966424/1826058
相关文章推荐
- 如何在linux下解压缩rar格式的文件压缩包
- java打包jar后,使之一直在linux上运行,不随终端退出而关闭
- Linux网桥及brctl命令(收藏)
- linux系统中查看己设置iptables规则
- linux系统中查看己设置iptables规则
- 对于linux下system()函数的深度理解(转载)
- SecureCRT中常用linux命令
- linux源码包与RPM包的区别
- Linux 执行ll命令时指定按文件时间或大小排序
- 查看linux是32位还是64位的几种方法
- Linux启动和关闭时自动执行的所有脚本文件
- centos7安装iptables
- linux配置mysql常见问题
- 给 Linux 系统“减肥”,系统垃圾清理
- Linux体系结构(二): Linux系统层次
- windows远程登录 ubuntu Linux 系统及互连共享桌面
- CentOS搭建内网yum仓库
- Linux体系结构(五): 文件系统
- linux系统编程之管道实现父系进程间通信
- Linux用多线程和socket实现跨机器的聊天通信功能