CentOS7 安装mysql 8.0

来源:互联网 发布:手机里变钱魔术软件 编辑:程序博客网 时间:2024/05/04 01:01

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]

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!




原创粉丝点击