设为首页 收藏本站
查看: 1499|回复: 0

[经验分享] centos7中编译安装mysql5.7.17

[复制链接]

尚未签到

发表于 2018-10-10 08:08:45 | 显示全部楼层 |阅读模式
  MySQL 的安装方式有很多,最常见的就是编译安装和二进制安装;
  在这里我将两种安装方式都介绍一下,自由选择;
  首先我们来看一下编译安装的步骤:
  首先,到官方网站中下载源码包;
  https://dev.mysql.com/downloads/mysql
  选择下载源码包:

  有很多针对不同系统的源码包,我们选择通用版:

  下载完成后,放到我们服务器上;
  接下来按照步骤进行解压编译安装即可;
  MySQL从5.5开始,使用cmake 进行编译设置;因此,我们还要安装cmake编译工具:
  shell > yum -y install cmake
  根据官方文档提示,此过程比较消耗内存,同时也一定注意,从MySQL5.7版本开始,安装MySQL需要依赖 Boost  的C++扩展,而且只能是 1.59.0 版本;
  Boost 下载地址: http://www.boost.org/users/history  ;选择1.59.0版本下载,在编译是填写相应参数,指定Boost源码位置即可;
  shell > tar zxf boost_1_59_0.tar.gz  #解压扩展
  shell > mv boost_1_59_0  /usr/local/boost  # 将扩展源码剪切到/usr/local下
  shell > groupadd  mysql
  shell > useradd -r -g mysql -s /bin/false mysql  # 创建不可登录用户
  创建安装目录和数据存放目录,并修改权限
  shell > mkdir -p /usr/local/mysql/data
  shell > chown -R mysql:mysql  /usr/local/mysql
  shell >  tar zxf mysql-5.7.17.tar.gz   #解压mysql源码包
  shell >  cd mysql-5.7.17   #切换目录到刚解压的文件夹中
  shell >  cmake  -DCMAKE_INSTALL_PREFIX=/usr/local/mysql  -DMYSQL_DATADIR=/usr/local/mysql/data  -DMYSQL_UNIX_ADDR=/tmp/mysql.sock  -DDEFAULT_CHARSET=utf8  -DDEFAULT_COLLATION=utf8_general_ci  -DWITH_BOOST=/usr/local/boost
  cmake 参数解释:
  -DCMAKE_INSTALL_PREFIX: 指定安装路径
  -DMYSQL_DATADIR : 指定数据存放路径
  -DMYSQL_UNIX_ADDR :指定套间字路径
  -DDEFAULT_CHARSET : 设置字符集
  -DDEFAULT_COLLATION : 设置字符校验集
  -DWITH_BOOST : 指定Boost扩展源码路径
  安装过程并不顺利,遇到好几次错误
  1.没有安装 gcc 和 gcc-c++,执行cmake报如下错误:
  ==================================================
  [root@ice mysql-5.5.27]# cmake .

  -- The C compiler>
  -- The CXX compiler>  CMake Error: your C compiler: "CMAKE_C_COMPILER-NOTFOUND" was not found.   Please set CMAKE_C_COMPILER to a valid compiler path or name.
  CMake Error: your CXX compiler: "CMAKE_CXX_COMPILER-NOTFOUND" was not found.   Please set CMAKE_CXX_COMPILER to a valid compiler path or name.
  .
  .
  .
  -- Configuring incomplete, errors occurred!
  ==================================================
  解决方法:安装gcc和gcc-c++
  yum install gcc
  yum install gcc-c++
  #删除cache文件,不删除还会报错
  rm CMakeCache.txt
  cmake .
  2.编译快结束时,又报如下错误:
  Warning: Bison executable not found in PATH
  解决方法:安装bison
  yum install bison
  rm CMakeCache.txt
  cmake .
  #编译通过
  shell > make  #此过程很漫长,请耐心等待
  shell > make install
  shell > chown -R mysql:mysql /usr/local/mysql # 重新修改权限
  shell > cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf #复制配置文件
  shell > vim /etc/my.cnf # 修改配置文件 修改内容如下
  basedir = /usr/local/mysql/
  datadir = /usr/local/mysql/data
  socket = /tmp/mysql.sock
  shell > cd /usr/local/mysql  #切换至安装目录
  shell > bin/mysqld --defaults-file=/etc/my.cnf --initialize --user=mysql   # 初始化数据库
  命令参数解释:
  --defaults-file : 制定MySQL配置文件路径
  --initialize : 初始化随机密码,注意,初始化的密码是一个过期密码,登录后需要修改密码
  --user: 指定账户
  上一个命令执行完之后,会在命令提示符的最后给出随机密码,
  一定记住 将此密码记录下来
  shell >  support-files/mysql.server start  #启动mysql 服务器
  shell > bin/mysql -u root -p
  Enter password:   # 输入刚刚的随机密码链接数据库

  mysql>>  至此:MySQL5.7+ 编译安装完成;
  ========================
  OK ,接下来我们在进行,二进制安装,
  二进制安装的方式相对来说就简单很多了,其实步骤类似,只是官方帮我们编译好了,不需要我们在使用cmake、make、make install 等命令进行编译;
  我们只需要下载解压,然后做相应的操作配置即可;
  但是,我们需要下载较大的二进制包文件;
  下载地址:
  https://dev.mysql.com/downloads/mysql

  下载完之后,我们进行相关的配置,前面的步骤几乎和编译安装时一样,同样需要添加用户和组;如果已经添加过,则不需要重复操作,直接跳过即可:
  shell > groupadd  mysql
  shell > useradd -r -g mysql -s /bin/false mysql  # 创建不可登录用户
  二进制安装需要 libaio 扩展:
  shell > yum -y install libaio  libaio-devel
  shell > tar zxf mysql-5.7.17-Linux-glibc2.5-x86_64.tar.gz
  shell > mv mysql-5.7.17-linux-glibc2.5-x86_64 /usr/local/mysql # 将源码包剪切到相应目录
  shell > cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf #复制配置文件
  shell > vim /etc/my.cnf # 修改配置文件 修改内容如下
  basedir = /usr/local/mysql/
  datadir = /usr/local/mysql/data
  socket = /tmp/mysql.sock
  shell > cd /usr/local/mysql #切换至目录
  shell > cd /usr/local/mysql  #切换至安装目录
  shell > bin/mysqld --defaults-file=/etc/my.cnf --initialize --user=mysql   # 初始化数据库
  命令参数解释:
  --defaults-file : 制定MySQL配置文件路径
  --initialize : 初始化随机密码,注意,初始化的密码是一个过期密码,登录后需要修改密码
  --user: 指定账户
  上一个命令执行完之后,会在命令提示符的最后给出随机密码,
  一定记住 将此密码记录下来
  shell >  support-files/mysql.server start  #启动mysql 服务器
  shell > bin/mysql -u root -p
  Enter password:   # 输入刚刚的随机密码链接数据库

  mysql>>  至此二进制安装完成!!!
  将mysql设置成开机自动启动!
  cp support-files/mysql.server /etc/rc.d/init.d/mysqld
  chmod +x /etc/rc.d/init.d/mysqld
  chkconfig --add mysqld
  chkconfig --list mysqld
  mysqld         0:关闭1:关闭2:启用3:启用4:启用5:启用6:关闭
  设置可以单独使用mysql命令
  echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
  . /etc/profile
  编译安装与二进制安装过程和原理几乎一致,最大的区别就是,编译安装时我们需要下载源代码进行手动编译,而二进制安装不需要我们进行手动编译;


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-619727-1-1.html 上篇帖子: MySQL事务处理实现方法步骤 下篇帖子: mysql5.7逻辑备份工具mysqlpump
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表