mysql 5.6.23 源码包安装报错_大环境下MySQL5.6源码安装实战一步步教你 CentOS6.5_64bit下编译安装...

一、关闭防火墙

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

**********************************************************************************************

十三、启动mysqlvi .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

原文:http://blog.csdn.net/guoyjoe/article/details/44813039

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值