您的位置:首页 > 运维架构 > Linux

CentOS7 安装mysql 8.0

2017-07-13 11:54 591 查看
CentOS7的yum源中默认是没有mysql的,我们需要要先下载mysql的repo源。

1、下载mysql的repo源

wget http://repo.mysql.com/yum/mysql-8.0-community/el/7/x86_64/mysql57-community-release-el7-9.noarch.rpm
2、安装mysql57-community-release-el7-9.noarch.rpm包

rpm -ivh mysql57-community-release-el7-9.noarch.rpm

3、修改MySQL的repo源,使MySQL8.0可用

vi /etc/yum.repos.d/mysql-community.repo

[mysql-connectors-community]

name=MySQL Connectors Community

baseurl=http://repo.mysql.com/yum/mysql-connectors-community/el/7/$basearch/

enabled=1

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

 

[mysql-tools-community]

name=MySQL Tools Community

baseurl=http://repo.mysql.com/yum/mysql-tools-community/el/7/$basearch/

enabled=1

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

# Enable to use MySQL 5.5

[mysql55-community]

name=MySQL 5.5 Community Server

baseurl=http://repo.mysql.com/yum/mysql-5.5-community/el/7/$basearch/

enabled=0

gpgcheck=1

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

 

# Enable to use MySQL 5.6

[mysql56-community]

name=MySQL 5.6 Community Server

baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/7/$basearch/

enabled=0

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

 

[mysql57-community]

4000

name=MySQL 5.7 Community Server

baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/

enabled=0(修改后)

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

 

[mysql80-community]

name=MySQL 8.0 Community Server

baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/7/$basearch/

enabled=1(修改后)

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

 

[mysql-tools-preview]

name=MySQL Tools Preview

baseurl=http://repo.mysql.com/yum/mysql-tools-preview/el/7/$basearch/

enabled=0

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

4、安装mysql-server

sudo yum install mysql-server

根据步骤安装就可以了

4、重置密码

重置密码前,首先要登录

mysql -u root

 登录时有可能报这样的错:ERROR 2002 (HY000): Can‘t connect to localMySQL server through socket ‘/var/lib/mysql/mysql.sock‘ (2),原因是/var/lib/mysql的访问权限问题。下面的命令把/var/lib/mysql的拥有者改为当前用户:

chown -R root:root /var/lib/mysql  

然后,重启服务:

service mysqld restart

5、MySQL安装完毕时,生成一个随机密码
随机密码在 /var/log/mysqld.log

使用查看密码: grep 'temporary password' /var/log/mysqld.log

用随机密码登录然后更改密码

update mysql.user set authentication_string=password('new_password') where user='root' and Host = 'localhost';

若显示未修改密码,无权限修改,执行

systemctl stop mysqld

vi /etc/my.cnf

在[mysqld]的段中加上一句:skip-grant-tables,如下:

[mysqld] 

datadir=/var/lib/mysql  

socket=/var/lib/mysql/mysql.sock  

skip-grant-tables 

保存,重启服务

systemctl start mysqld

用随机密码登录

修改密码:

update mysql.user set authentication_string=password('new_password') where user='root' and Host = 'localhost';

退出

将my.cnf的设置修改回来,重启MySQL服务

再次登录,OK!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: