MySQL 5.6- 编译安装
简述
MySQL 提供了二进制包,但是有时候,我们的环境包版本不一样,导致二进制包无法正常使用,就不需要手动编译安装一个版本。
环境介绍
操作系统:CentOS 7.6.1810
MySQL 版本:5.6.34
安装
创建执行用户
useradd -s /sbin/nologin mysql
passwd mysql
安装依赖包
yum -y install wget cmake ncurses-devel bzr gcc-c++ gcc bison make perl-Module-Install.noarch
下载源码包
wget -c http://mirror.bit.edu.cn/mysql/Downloads/MySQL-5.6/mysql-5.6.34.tar.gz
解压编译
tar zxvf mysql-5.6.34.tar.gz
cd mysql-5.6.34
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DINSTALL_PLUGINDIR=/usr/local/mysql/plugin
make && make install
设置配置文件啊
cat > /etc/my.cnf <<END
[client]
port = 3306
socket = /tmp/mysql.sock
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port = 3306
socket = /tmp/mysql.sock
skip-external-locking
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
log-bin=mysql-bin
binlog_format=mixed
server-id = 1
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysqldump]
quick
max_allowed_packet = 16M
[mysql]
no-auto-rehash
[myisamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M
[mysqlhotcopy]
interactive-timeout
END
设置启动文件
cp -f /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
初始化数据库
mkdir -p /usr/local/mysql/data
chown mysql.mysql /usr/local/mysql/data -R
cd /usr/local/mysql
./scripts/mysql_install_db --defaults-file=/etc/my.cnf --user=mysql
启动数据库
/etc/init.d/mysql start
总结
源码编译需要的时间比较久,但是一般编译完一份,就可以拷贝到其他同系统的机器上运行了。
- 原文作者:Linux运维菜
- 原文链接:https://www.opcai.top/post/2019/2019-03/centos_compile_mysql5.6/
- 版权声明:本作品采用进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。