linux mysql 5.6.23_CentOS 6.8 编译安装MySQL 5.6.23

安装环境:CentOS 6.8,MySQL 5.6.23

一、编译安装MySQL前准备工作

安装编译源码所需的工具和库

yum -y install gcc gcc-c++ ncurses-devel perl  openssl-devel bison

安装cmake(记得好像从mysql 5.5开始需要cmake编译安装),可从https://cmake.org/download/ 中下载。

tar zxvfcmake-3.4.1.tar.gz

cd cmake-3.4.1

./bootstrap

make && make install

二、创建用户及MySQL所需目录

新增mysql用户

groupadd -r mysql

useradd -r -g mysql mysql

新建MySQL所需目录

mkdir -p /usr/local/mysql

mkdir -p /data/mysqldb

三、编译安装MySQL

可从http://dev.mysql.com/downloads/mysql/ 下载mysql源码。

tar zxvf mysql-5.6.23.tar.gz

cd mysql-5.6.23

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql\

-DDEFAULT_CHARSET=utf8\

-DDEFAULT_COLLATION=utf8_general_ci\

-DWITH_INNOBASE_STORAGE_ENGINE=1\

-DWITH_ARCHIVE_STORAGE_ENGINE=1\

-DWITH_BLACKHOLE_STORAGE_ENGINE=1\

-DMYSQL_DATADIR=/data/mysqldb\

-DMYSQL_TCP_PORT=3306\

-DENABLE_DOWNLOADS=1\

-DSYSCONFDIR=/etc\

-DWITH_SSL=system\

-DWITH_ZLIB=system\

-DWITH_LIBWRAP=0

make&& make install

DCMAKE_INSTALL_PREFIX=dir_name

设置mysql安装目录

-DDEFAULT_CHARSET=charset_name

设置服务器的字符集。缺省情况下,MySQL使用latin1的(CP1252西欧)字符集

-DDEFAULT_COLLATION=collation_name

设置服务器的排序规则。

-DWITH_INNOBASE_STORAGE_ENGINE=1

-DWITH_ARCHIVE_STORAGE_ENGINE=1

-DWITH_BLACKHOLE_STORAGE_ENGINE=1

存储引擎选项:MyISAM,MERGE,MEMORY,和CSV引擎是默认编译到服务器中,并不需要明确地安装。

-DMYSQL_DATADIR=dir_name

设置mysql数据库文件目录

-DSYSCONFDIR

设置my.cnf位置

修改mysql目录权限

cd /usr/local/mysql

chown -R mysql:mysql .

cd /data/mysqldb

chown -R mysql:mysql .

初始化mysql数据库

cd/usr/local/mysql

./scripts/mysql_install_db --user=mysql --datadir=/data/mysqldb

编辑MySQL配置文件

mv /etc/my.cnf /etc/my.cnf.bak

编辑my.cnf,my.cnf可在percona官网中及按照自己的情况生成。网址如下:https://tools.percona.com/wizard 。

[mysql]

# CLIENT #

port                          = 3306

socket                        = /data/mysqldb/mysql.sock

[mysqld]

# GENERAL #

user                          = mysql

default-storage-engine        = InnoDB

socket                        = /data/mysqldb/mysql.sock

pid-file                      = /data/mysqldb/mysql.pid

# MyISAM #

key-buffer-size                = 32M

myisam-recover                = FORCE,BACKUP

# SAFETY #

max-allowed-packet            = 16M

max-connect-errors            = 1000000

# DATA STORAGE #

datadir                        = /data/mysqldb/

# BINARY LOGGING #

log-bin                        = /data/mysqldb/mysql-bin

expire-logs-days              = 14

sync-binlog                    = 1

# REPLICATION #

skip-slave-start              = 1

relay-log                      = /data/mysqldb/relay-bin

slave-net-timeout              = 60

# CACHES AND LIMITS #

tmp-table-size                = 32M

max-heap-table-size            = 32M

query-cache-type              = 0

query-cache-size              = 0

max-connections                = 500

thread-cache-size              = 50

open-files-limit              = 65535

table-definition-cache        = 4096

table-open-cache              = 4096

# INNODB #

innodb-flush-method            = O_DIRECT

innodb-log-files-in-group      = 2

innodb-log-file-size          = 64M

innodb-flush-log-at-trx-commit = 1

innodb-file-per-table          = 1

innodb-buffer-pool-size        = 592M

# LOGGING #

log-error                      = /data/mysqldb/mysql-error.log

log-queries-not-using-indexes  = 1

slow-query-log                = 1

slow-query-log-file            = /data/mysqldb/mysql-slow.log

复制MySQL启动文件及其命令加入PATH

cp support-files/mysql.server /etc/init.d/mysqld

vim /etc/profile.d/mysql.sh

PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH

export PATH

source /etc/profile.d/mysql.sh

启动MySQL并增加启动项

service mysqld start

chkconfig  mysqld on

设置MySQL登录权限

drop user ''@localhost;

drop user ''@hostname;

update mysql.user set password=password('*******');

flush privileges;

至此,MySQL编译安装完成。

0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值