centos 6.9 安装 Mysql 5.7.20 安装

时间:2021-03-30 16:17:19

1. 安装mysql 5.7.20

由于 一些源码中 用到的 索引长度超过1000,所以需要升级mysql5.5 及以上,在5.7.7 之后的版本是默认支持3072 长度的索引,本次升级到5.7.20


centos 6.9 安装 Mysql 5.7.20 安装

centos 6.9 安装 Mysql 5.7.20 安装


1.1 安装


(1) 卸载默认安装的     

# yum remove mysql  mysql*


(2) 获取yum源          

# rpm -Uvh https://dev.mysql.com/get/mysql57-community-release-el6-11.noarch.rpm  


(3) 安装               

# yum install mysql-community-server


(4) 重启 MySQL

# server mysqld start


(5) 安装mysql-devel    

# rpm -Uvh http://repo.mysql.com/yum/mysql-5.7-community/el/6/x86_64/mysql-community-devel-5.7.20-1.el6.x86_64.rpm

没有执行第五步则 会导致今后编译mysql代码时没有mysql.h mysql的相关库

 

1.2 登录报错 (参考其他人的经验)

(1) /etc/my.conf 增加 skip-grant-tables.

(2) # service mysqld restart

(3) # mysql

(4) >use mysql;

(5) >update user set authentication_string=password('#@2weT85E4.com') where user='root';

    要设置复杂密码,否则后面还是需要再重新设置; 这里 authentication_string 是保存密码的列,若以

    若以前机器上安装过老版本的 mysql 则列名为 password

(6) >flush privileges;

(7) 退出mysql 删除/etc/my.conf 中的skip-qrant-tables

(8) # service mysqld restart

(9) # mysql -uroot -p#@2weT85E4.com 尝试登录看是否成功

(10) 若登录后,进行 show databases;等相关操作提示密码设置问题则用命令设置

    >alter user 'root'@'localhost' identified by '复杂的密码'; 

 

1.3 问题

(1)  Centos6.9 安装高版本mysql57-community-release-el7-11会出错,若安装了mysql57-community-release-el7-11出错再尝试mysql57-community-release-el6-11一定要记得 yum clean all,不然yum还是一直尝试安装 el7mysql57-community-release-el7-11;

 

(2)  启动数据库时 报错 MySQL Daemon failed to start.日志打印 /var/log/mysqld.logInnoDB: The Auto-extending innodb_system data file './ibdata1' is of a different size 640

解决办法  rm -rf /var/lib/mysql/ib*

 

(3) 源码编译出错mysql/mysql.h:没有那个文件或目录;原因是没有执行安装过程的第5步;

 

(4)  MySQL 5.7.20后没有了 lmysqlclient_r库,而是lmysqlclient,所以引用到的相关库都需要更改过来;