大环境下MySQL5.6源码安装实战一步步教你 CentOS6.5_64bit下编译安装[email protected]

l转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/44813039

一、关闭防火墙

chkconfig iptables off
service iptables stop 

二、检查操作系统上是否安装了MySQL
[[email protected] backup]# rpm -qa |grep mysql
qt-mysql-4.6.2-26.el6_4.x86_64
mysql-5.1.71-1.el6.x86_64
mysql-server-5.1.71-1.el6.x86_64
mysql-devel-5.1.71-1.el6.x86_64
mysql-libs-5.1.71-1.el6.x86_64

三、删除MyQL(redhat6.3服务器自带的mysql-libs是mysql-libs-5.1.61-4.el6.x86_64,可能会和高版本的mysql-libs有冲突)
yum remove mysql-libs

四、确定MySQL相关包彻底删除
[[email protected] backup]# rpm -qa |grep mysql

五、下载mysql源码包,mysql-5.6.23.tar.gz 
下载时注意别选成其他的linux安装包,不然编译肯定报错。选择平台的下拉列表里选择 Source Code,Select Platform: Source Code ,
下载 Generic Linux (Architecture Independent), Compressed TAR Archive。

六、添加用户和组:

groupadd  mysql		 #增加用户组
useradd -d /home/mysql -g mysql mysql

七、配MySQL环境变量
su - mysql
vi .bash_profile
PATH=$PATH:$HOME/bin:/u01/my3306/bin
source .bash_profile

八、创建目录及授权

mkdir -p /u01/my3306/data
mkdir -p /u01/my3306/log/iblog
mkdir -p /u01/my3306/log/binlog
mkdir -p /u01/my3306/log/relaylog
mkdir -p /u01/my3306/run
mkdir -p /u01/my3306/tmp
chown -R mysql:mysql /u01/my3306
chmod -R 777 /u01/my3306

九、解压
tar -zxvf mysql-5.6.23.tar.gz 
cd mysql-5.6.23

十、编译并安装

cmake -DCMAKE_INSTALL_PREFIX=/u01/my3306 -DINSTALL_DATADIR=/u01/my3306/data  -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_SSL=yes -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/u01/my3306/run/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DSYSCONFDIR=/etc -DWITH_READLINE=on

make
make install

十一、参数配置/u01/my3306/my.cnf

[client]
port=3306
socket=/u01/my3306/mysql.sock

[mysql]
pid_file=/u01/my3306/run/mysqld.pid

[mysqld]
# disable autocommit
autocommit=0
general_log=off
explicit_defaults_for_timestamp=true
sha256_password_private_key_path=/u01/my3306/mykey.pem
sha256_password_public_key_path=/u01/my3306/mykey.pub
# system
basedir=/u01/my3306
datadir=/u01/my3306/data
max_allowed_packet=134217728
max_connections=8192
max_user_connections=8000
open_files_limit=65535
pid_file=/u01/my3306/run/mysqld.pid
port=3306
server_id=101
skip_name_resolve=ON
socket=/u01/my3306/run/mysql.sock
tmpdir=/u01/my3306/tmp

#binlog
#log-bin=/u01/my3306/log/binlog
log_bin=/u01/my3306/log/binlog/binlog
binlog_cache_size=32768
binlog_format=row
expire_logs_days=7
log_slave_updates=ON
max_binlog_cache_size=2147483648
max_binlog_size=524288000
sync_binlog=100

#logging
log_error=/u01/my3306/log/alert.log
slow_query_log_file=/u01/my3306/log/slow.log
log_queries_not_using_indexes=1
slow_query_log=1
log_slave_updates=ON
log_slow_admin_statements=1
long_query_time=1

#relay
relay_log=/u01/my3306/log/relaylog
relay_log_index=/u01/my3306/log/relay.index
relay_log_info_file=/u01/my3306/log/relay-log.info

#slave
slave_load_tmpdir=/u01/my3306/tmp
slave_skip_errors=OFF

#innodb
innodb_data_home_dir=/u01/my3306/log/iblog
innodb_log_group_home_dir=/u01/my3306/log/iblog
innodb_adaptive_flushing=ON
innodb_adaptive_hash_index=ON
innodb_autoinc_lock_mode=1
innodb_buffer_pool_instances=8

#default
innodb_change_buffering=inserts
innodb_checksums=ON
innodb_buffer_pool_size= 128M
innodb_data_file_path=ibdata1:32M;ibdata2:16M:autoextend
innodb_doublewrite=ON
innodb_file_format=Barracuda
innodb_file_per_table=ON
innodb_flush_log_at_trx_commit=1
innodb_flush_method=O_DIRECT
innodb_io_capacity=1000
innodb_lock_wait_timeout=10
innodb_log_buffer_size=67108864
innodb_log_file_size=1048576000
innodb_log_files_in_group=4
innodb_max_dirty_pages_pct=60
innodb_open_files=60000
innodb_purge_threads=1
innodb_read_io_threads=4
innodb_stats_on_metadata=OFF
innodb_support_xa=ON
innodb_use_native_aio=OFF
innodb_write_io_threads=10

[mysqld_safe]
datadir=/u01/my3306/data

十二、初始化MySQL脚本

rm -rf /u01/my3306/data/*
rm -rf /u01/my3306/log/iblog/*
rm -rf /u01/my3306/log/binlog/*
chmod -R 777 /u01/my3306/data/
chmod -R 777 /u01/my3306/log/iblog/
chmod -R 777 /u01/my3306/log/binlog/
chmod 755 /u01/my3306/my.cnf

./scripts/mysql_install_db  --defaults-file=/u01/my3306/my.cnf --datadir=/u01/my3306/data --user=mysql

chmod -R 777 /u01/my3306/data/
chmod -R 777 /u01/my3306/log/iblog/
chmod -R 777 /u01/my3306/log/binlog/

说明:defaults-file表示指定默认的配置文件,如果不指定,系统默认的优先级是先使用/etc/my.cnf作为mysql的配置文件,那之前make的那些参数就白设置了.

在初化时进行日志监控
tail -f /u01/my3306/log/alert.log

**************************************************************************************************************
报错处理:
RSA private key file not found: /u01/my3306/data//private_key.pem. Some authentication plugins will not work.
RSA public key file not found: /u01/my3306/data//public_key.pem. Some authentication plugins will not work.

解决方法如下:
1. 检查是否安装openssl
$rpm -qa openssl
openssl-1.0.0-20.el6_2.5.x86_64

2.利用openssl生成公有和私有key
$ openssl genrsa -out mykey.pem 1024
Generating RSA private key, 1024 bit long modulus
..........++++++
.++++++
e is 65537 (0x10001)

$ openssl rsa -in mykey.pem -pubout -out mykey.pub
writing RSA key

$ ll mykey*
[[email protected] my3306]# ll mykey*
-rw-r--r-- 1 root root 891 Apr  1 20:35 mykey.pem
-rw-r--r-- 1 root root 272 Apr  1 20:35 mykey.pub

3.修改key的权限
chmod 755 /u01/my3306/mykey.pem
chmod 755 /u01/my3306/mykey.pub
$ ll mykey*          
[[email protected] my3306]# ll mykey* 
-rwxr-xr-x 1 root root 891 Apr  1 20:35 mykey.pem
-rwxr-xr-x 1 root root 272 Apr  1 20:35 mykey.pub

4、添加参数到[mysqld]中即: vi my.cnf
[mysqld]
sha256_password_private_key_path=/u01/my3306/mykey.pem
sha256_password_public_key_path=/u01/my3306/mykey.pub
**********************************************************************************************

十三、启动mysql

vi .bash_profile   ---root用户下添加
PATH=$PATH:$HOME/bin:/u01/my3306/bin

mysqld_safe --defaults-file=/u01/my3306/my.cnf --user=mysql &

十四、登录MySQL

[[email protected] ~]# mysql -h127.0.0.1 -uroot
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.6.23-log Source distribution

Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ to clear the current input statement.

mysql> show variables like ‘%log-bin%‘;
Empty set (0.00 sec)

mysql> show variables like ‘%bin%‘;
+-----------------------------------------+------------------------------+
| Variable_name                           | Value                        |
+-----------------------------------------+------------------------------+
| bind_address                            | *                            |
| binlog_cache_size                       | 32768                        |
| binlog_checksum                         | CRC32                        |
| binlog_direct_non_transactional_updates | OFF                          |
| binlog_error_action                     | IGNORE_ERROR                 |
| binlog_format                           | ROW                          |
| binlog_gtid_simple_recovery             | OFF                          |
| binlog_max_flush_queue_time             | 0                            |
| binlog_order_commits                    | ON                           |
| binlog_row_image                        | FULL                         |
| binlog_rows_query_log_events            | OFF                          |
| binlog_stmt_cache_size                  | 32768                        |
| binlogging_impossible_mode              | IGNORE_ERROR                 |
| innodb_api_enable_binlog                | OFF                          |
| innodb_locks_unsafe_for_binlog          | OFF                          |
| log_bin                                 | ON                           |
| log_bin_basename                        | /u01/my3306/log/binlog       |
| log_bin_index                           | /u01/my3306/log/binlog.index |
| log_bin_trust_function_creators         | OFF                          |
| log_bin_use_v1_row_events               | OFF                          |
| max_binlog_cache_size                   | 2147483648                   |
| max_binlog_size                         | 524288000                    |
| max_binlog_stmt_cache_size              | 18446744073709547520         |
| simplified_binlog_gtid_recovery         | OFF                          |
| sql_log_bin                             | ON                           |
| sync_binlog                             | 100                          |
+-----------------------------------------+------------------------------+
26 rows in set (0.00 sec)

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

1.初始化MySQL脚本:
sh init3306.sh
rm -rf /u01/my3306/data/*
rm -rf /u01/my3306/log/iblog/*
rm -rf /u01/my3306/log/binlog/*
chmod -R 777 /u01/my3306/data/
chmod -R 777 /u01/my3306/log/iblog/
chmod -R 777 /u01/my3306/log/binlog/
chmod 755 /u01/my3306/my.cnf

./scripts/mysql_install_db  --defaults-file=/u01/my3306/my.cnf --datadir=/u01/my3306/data --user=mysql

chmod -R 777 /u01/my3306/data/
chmod -R 777 /u01/my3306/log/iblog/
chmod -R 777 /u01/my3306/log/binlog/

2.启动MySQL脚本
sh start3306.sh
mysqld_safe --defaults-file=/u01/my3306/my.cnf --user=mysql &

3.登录MySQL脚本
sh logon3306.sh
mysql -h127.0.0.1 -uroot


时间: 2024-07-30 06:35:53

大环境下MySQL5.6源码安装实战一步步教你 CentOS6.5_64bit下编译安装[email protected]的相关文章

Linux MySQL5.5源码安装

环境:CentOS7,MySQL5.5 1.MySQL5.5源码下载 Oracle的网站打开较慢,http://mirrors.sohu.com/mysql/这里提供了MySQL的镜像.一般的,Linux的程序安装有两种方式:A利用RPM,YUM等工具 B手动安装.其中手动安装又有两种方式,一种是直接下载已经编译好的二进制文件,另一种是下载源码手动编译.我们这里尝试下载源码手动编译的方式. 如何区分下载文件列表的文件是已编译好的二进制文件,还是源码文件: A.文件大小.由于从源码编译为二进制文件

MYSQL5.5源码包编译安装

MYSQL5.5源码安装首先安装必要的库yum -y install gcc*###### 安装 MYSQL ######首先安装camke 一.支持YUM,则yum install -y cmake二.也可以源码安装cd /usr/local/src#下载cmakewget http://www.cmake.org/files/v2.8/cmake-2.8.7.tar.gztar zxvf cmake-2.8.7.tar.gzcd cmake-2.8.7#安装cmake./configurem

年终福利,PHP7+Apache2.4+MySQL5.6 源码编译安装,环境配置,搭建你自己的LAMP环境

PHP7 都出来了,你还在玩PHP5吗? MySQL5.6 早都出来了,你还在玩MySql5.2吗? Apache2.4 早都出来了,你还在玩Apache2.2吗? 笔者不才,愿意亲自搭建环境,供搭建参考.这里是源码安装的奥,什么一键安装包,什么yum安装,什么rpm安装都统统略过(笔者是一个自虐狂,就像windows下安装软件一样,不喜欢安装在默认的位置也就是C盘了,否则系统盘就爆了) 安装之前了,要说明下,要保证PHP在最后安装,原因后面揭晓.安装任何一个软件之前,都要确保它所依赖的库都安装

linux小白 mysql5.0源码安装配置

安装mysql-5.0.45.tar.gz(该软件包下载地址:http://www.filewatcher.com/m/mysql-5.0.45.tar.gz.24433261-0.html) # groupadd mysql              #添加mysql组 # useradd -g mysql mysql      #添加mysql用户,且加入mysql组 --------------------编译过程---------------------------------- # t

九周第四次课(2月26日) 11.1 LAMP架构介绍 11.2 MySQL、MariaDB介绍 11.3/11.4/11.5 MySQL安装 扩展 mysql5.5源码编译安装

11.1 LAMP架构介绍11.2 MySQL.MariaDB介绍11.3/11.4/11.5 MySQL安装扩展mysql5.5源码编译安装   http://www.aminglinux.com/bbs/thread-1059-1-1.html mysql5.7二进制包安装(变化较大)  http://www.apelearn.com/bbs/thread-10105-1-1.html =====================================================

【数据库】mysql5.7 源码安装

说明 /home/chuqq/xxx/mysql/mysql-5.7.23是mysql的源码路径,一下所有的目录都是在这个目录下进行的,如需安装,请根据自身的目录情况进行更改. 获取源码 wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-boost-5.7.23.tar.gz 指定目录: tar zxvf mysql-boost-5.7.23.tar.gz cd mysql-5.7.23 mysql软件目录: data/mysql/ins

基于Ubuntu12.04下的Keystone源码安装

Keystone 概述:Keystone 作为Openstack最早期的核心项目独立发展,由于Openstack 采取的设计理念也是所有一切皆API,因此设计服务API的调用脱离不了Keystone.Keystone 作为Openstack 中身份认证服务,在Openstack起到非常关键的作用,并且实现了Identity API 供Openstack 其他组件间进行身份验证 Keystone 两种认证方式:UUID认证的原理当用户拿着有效的用户名和密码去keystone认证后,keystone

CentOS6.5_64bit下编译安装MySQL-5.6.23

转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/44785511 ************************************************************         CentOS6.5_64bit下编译安装MySQL-5.6.23 **************************************************************一.关闭防火墙chkconfig iptable

Android源码浅析(二)——Ubuntu Root,Git,VMware Tools,安装输入法,主题美化,Dock,安装JDK和配置环境

Android源码浅析(二)--Ubuntu Root,Git,VMware Tools,安装输入法,主题美化,Dock,安装JDK和配置环境 接着上篇,上片主要是介绍了一些安装工具的小知识点Android源码浅析(一)--VMware Workstation Pro和Ubuntu Kylin 16.04 LTS安装配置,其实Ubuntu Kylin 16.04 LTS也只是为了体验,我们为了追求稳定,还是使用了Ubuntu14.04 这里提供一个国内镜像的下载链接,可以用迅雷,下载下来之后后缀