linux 安装mysql 8.0

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_16399991/article/details/82684166

环境说明:

[root@izbp1e0xboek6oko8ni18yz ~]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core) 
[root@izbp1e0xboek6oko8ni18yz ~]# uname -a
Linux izbp1e0xboek6oko8ni18yz 3.10.0-693.2.2.el7.x86_64 #1 SMP Tue Sep 12 22:26:13 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

安装mysql 8 

可参考 https://www.linuxidc.com/Linux/2018-04/152010.htm

准备工作 安装依赖 (gcc需要4.8.3及以上版本)

yum -y install wget  cmake gcc gcc-c++ ncurses  ncurses-devel  libaio-devel  openssl openssl-devel

1.下载安装安装包  

下载链接:点击打开链接 https://dev.mysql.com/downloads/mysql/

或者使用命令下载

root@iZ23iuzu9fvZ:[/usr/local/data/mysqlCluser/mysql-master]wget  https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-boost-8.0.12.tar.gz

2.创建mysql用户

      groupadd mysql
      useradd -r -g mysql -s /bin/false mysql

3.创建安装目录和数据目录、解压源码包

 我把主库安装在了 /usr/local/mysql8Cluster/mysql-master

完成后我的目录结构如下:

[root@izbp1e0xboek6oko8ni18yz mysql-master]# pwd
/usr/local/mysql8Cluster/mysql-master
[root@izbp1e0xboek6oko8ni18yz mysql-master]# ls
data  mysql  mysql-8.0.12

4.编译&安装

根据自己的环境 自行配置参数。

[root@izbp1e0xboek6oko8ni18yz mysql-8.0.12]#  cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql8Cluster/mysql-master/mysql  -DMYSQL_DATADIR=/usr/local/mysql8Cluster/mysql-master/data/ -DSYSCONFDIR=/usr/local/mysql8Cluster/mysql-master/ -DMYSQL_TCP_PORT=3310 -DWITH_BOOST=/usr/local/mysql8Cluster/mysql-master/mysql-8.0.12/boost/ 

#cmake完成成功后 返回结果如下
......
......
-- CMAKE_C_FLAGS_RELWITHDEBINFO: -O2 -ffunction-sections -fdata-sections -fPIC -g -fno-omit-frame-pointer  -DDBUG_OFF
-- CMAKE_CXX_FLAGS_RELWITHDEBINFO: -O2 -ffunction-sections -fdata-sections -fPIC -g -fno-omit-frame-pointer -std=c++11  -DDBUG_OFF
-- Configuring done
-- Generating done
-- Build files have been written to: /usr/local/mysql8Cluster/mysql-master/mysql-8.0.12
#执行make 该过程比较耗时,也可能会遇到各种依赖问题,我遇到了gcc版本过低问题
[root@izbp1e0xboek6oko8ni18yz mysql-8.0.12]# make

问题1.编译过程中遇到如下问题 ,原因是内存不足,mysql5.9以上的版本,编译安装需要1G内存,而我的云主机刚好1G内存。解决办法参考https://blog.csdn.net/u010716706/article/details/78638340

..........
.........
.......
[ 33%] Building CXX object sql/CMakeFiles/sql_gis.dir/gis/disjoint.cc.o
[ 33%] Building CXX object sql/CMakeFiles/sql_gis.dir/gis/distance.cc.o
[ 33%] Building CXX object sql/CMakeFiles/sql_gis.dir/gis/distance_sphere.cc.o
[ 33%] Building CXX object sql/CMakeFiles/sql_gis.dir/gis/equals.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/gis/equals.cc.o] Error 4
make[1]: *** [sql/CMakeFiles/sql_gis.dir/all] Error 2
make: *** [all] Error 2

问题2.gcc 版本太低,gcc版本需要4.8.3及以上。gcc版本低于4.8.3 cmake时报错。升级gcc后还是报相同错误,可参考http://www.jyguagua.com/?p=3261。cmake有缓存可删除重新解压后cmake。(gcc编译了近4个小时)

5.新建配置文件 my.cnf

cat /etc/my.cnf
      [mysqld]
      server-id=1
      port=3306
      basedir=/usr/local/mysql
      datadir=/data/mysql
    ##请根据实际情况添加参数

6.目录权限修改

root@iZ23iuzu9fvZ:chown -R mysql:mysql /usr/local/data/mysqlCluser/mysql-master/mysql-8.0.12
root@iZ23iuzu9fvZ:chown -R mysql:mysql /usr/local/data/mysqlCluser/mysql-master/data/
root@iZ23iuzu9fvZ:chmod 755 /usr/local/data/mysqlCluser/mysql-master/mysql-8.0.12/
root@iZ23iuzu9fvZ:chmod 755 /usr/local/data/mysqlCluser/mysql-master/data/

7初始化数据库

bin/mysqld --initialize --user=mysql --datadir=/data/mysql/

bin/mysql_ssl_rsa_setup

8.启动mysql

猜你喜欢

转载自blog.csdn.net/qq_16399991/article/details/82684166