CentOS7编译安装MySQL 5.7.22

CentOS7编译安装MySQL 5.7.22

1.下载源码包

在mysql官网选择合适的版本,得到下载的url

https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.22.tar.gz 或者直接修改url

或者使用wget命令下载

cd /usr/local/src

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.22.tar.gz

下载完成之后解压安装包

tar -zxvf mysql-5.7.22.tar.gz

下载boost

wget http://www.sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz

tar -zxvf boost_1_59_0.tar.gz

mv boost_1_59_0 /usr/local/boost

进入mysql安装包

cd /usr/local/src/mysql-5.7.22

2.安装

卸载CentOS7默认携带的mariadb包

rpm -qa | grep -i mysql

rpm -qa | grep -i mariadb

卸载:

rpm -e mariadb-libs-5.5.56-2.el7.x86_64 –nodeps

安装一些依赖库

yum -y install cmake gcc gcc-c++ bison ncurses ncurses-devel bison perl autoconf cmake -y

创建用户组和用户

groupadd mysql

useradd -g mysql -s /sbin/nologin -M mysql

编译安装:

cmake \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

-DMYSQL_DATADIR=/cnet/data \

-DWITH_BOOST=/usr/local/boost \

-DSYSCONFDIR=/etc \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_PARTITION_STORAGE_ENGINE=1 \

-DWITH_FEDERATED_STORAGE_ENGINE=1 \

-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

-DWITH_MYISAM_STORAGE_ENGINE=1 \

-DENABLED_LOCAL_INFILE=1 \

-DENABLE_DTRACE=0 \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DWITH_EMBEDDED_SERVER=1 \

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock

————————————————————————————————————————-

make 报错c++: internal compiler error: Killed (program cc1plus)

[ 59%] Built target sql_dd

[ 60%] Built target slave

[ 60%] Building CXX object sql/CMakeFiles/sql_gis.dir/item_geofunc_setops.cc.o

c++: internal compiler error: Killed (program cc1plus)

Please submit a full bug report,

with preprocessed source if appropriate.

See <http://bugzilla.redhat.com/bugzilla> for instructions.

make[2]: *** [sql/CMakeFiles/sql_gis.dir/item_geofunc_setops.cc.o] Error 4

make[1]: *** [sql/CMakeFiles/sql_gis.dir/all] Error 2

make: *** [all] Error 2

内存不足,可以增加swap 交换分区 或者 加大物理内存

————————————————————————————————————————-

3.配置

设置权限 chown -R mysql:mysql /usr/local/mysql

添加配置文件

vi /etc/my.cnf

写入

[client]

port=3306

[mysql]

default-character-set=utf8

[mysqld]

port=3306

basedir=/usr/local/mysql

datadir=/cnet/data

character-set-server=utf8

default-storage-engine=InnoDB

max_connections=512

query_cache_size=0

tmp_table_size=18M

thread_cache_size=8

myisam_max_sort_file_size=64G

myisam_sort_buffer_size=35M

key_buffer_size=25M

read_buffer_size=64K

read_rnd_buffer_size=256K

sort_buffer_size=256K

innodb_flush_log_at_trx_commit=1

innodb_log_buffer_size=1M

innodb_buffer_pool_size=47M

innodb_log_file_size=24M

innodb_thread_concurrency=8

初始化mysql:

/usr/local/mysql/bin/mysqld \

–initialize-insecure \

–user=mysql \

–basedir=/usr/local/mysql \

–datadir=/cnet/data

添加MySQL环境变量

vi /etc/profile

最后一行增加

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

export PATH

刷新环境变量:

source /etc/profile

设置开机自启动

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

chmod +x /etc/init.d/mysqld

chkconfig –add mysqld

启动mysql

mysqld_safe –defaults-file=/etc/my.cnf &

查看mysql进程

ps -ef | grep mysql

netstat -ntlup | grep 3306

登陆MySQL

mysql -uroot

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容