Loading

CentOS 6 安装 MySQL 8.0.+

1.先查询是否安装MySQL

大多数centos 6 自带 MySQL5.1

命令:

rpm -qa|grep mysql

执行:

[root@lifan ~]# rpm -qa|grep mysql
mysql-libs-5.1.73-7.el6.i686

2.若有则卸载

rpm -e --nodeps mysql-libs

--nodeps 是消除依赖的意思

3.去官网复制yum下载链接用wget下载到服务器

https://dev.mysql.com/downloads/repo/yum/


命令:

wget https://dev.mysql.com/get/mysql80-community-release-el6-1.noarch.rpm

成功:

[root@lifan ~]# wget https://dev.mysql.com/get/mysql80-community-release-el6-1.noarch.rpm
--2018-12-10 06:40:42--  
...
Length: 25800 (25K) [application/x-redhat-package-manager]
Saving to: “mysql80-community-release-el6-1.noarch.rpm”

2018-12-10 06:40:42 (95.8 MB/s) - “mysql80-community-release-el6-1.noarch.rpm” saved [25800/25800]

若没有wget

[root@lifan ~]# wget https://dev.mysql.com/get/mysql80-community-release-el6-1.noarch.rpm
-bash: wget: command not found

安装wget

yum -y install wget

4.安装

第一步:

rpm -ivh mysql80-community-release-el6-1.noarch.rpm

执行成功结果:

[root@lifan ~]# rpm -ivh mysql80-community-release-el6-1.noarch.rpm
warning: mysql80-community-release-el6-1.noarch.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                ########################################### [100%]
1:mysql80-community-relea########################################### [100%]
[root@lifan ~]# 

第二步:

yum install mysql-server

执行后会跳出2次选择,输入y回车继续即可,如:

[root@lifan ~]# yum install mysql-server
Loaded plugins: fastestmirror
...
Install       5 Package(s)
Total download size: 452 M
Installed size: 1.7 G
Is this ok [y/N]: y

输入y继续安装:

...
Total                                                                                                                              16 MB/s | 452 MB     00:28     
warning: rpmts_HdrFromFdno: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
Importing GPG key 0x5072E1F5:
Userid : MySQL Release Engineering <mysql-build@oss.oracle.com>
Package: mysql80-community-release-el6-1.noarch (installed)
From   : /etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
Is this ok [y/N]: y

最后出现如下指令,安装成功:

Installed:
mysql-community-server.i686 0:8.0.13-1.el6                      
Dependency Installed:
mysql-community-client.i686 0:8.0.13-1.el6  mysql-community-common.i686 0:8.0.13-1.el6  mysql-community-libs.i686 0:8.0.13-1.el6  numactl.i686 0:2.0.9-2.el6 
Complete!

5.查询是否安装成功

[root@lifan ~]# mysqladmin -V
mysqladmin  Ver 8.0.13 for Linux on i686 (MySQL Community Server - GPL)

6.开启MySqL

[root@lifan ~]# service mysqld start
Initializing MySQL database:  
                                                   [  OK  ]
Starting mysqld:                                           [  OK  ]

查看MySQL启动状态:

[root@lifan ~]# service mysqld status
mysqld (pid  3852) is running...

7.查看系统给root自动生成的密码

cat /var/log/mysqld.log

执行结果(密码在第二行最后):

[root@lifan ~]# cat /var/log/mysqld.log
2018-12-10T12:19:20.303739Z 0 [System] [MY-013169] [Server] /usr/sbin/mysqld (mysqld 8.0.13) initializing of server in progress as process 3620
2018-12-10T12:19:24.878215Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: >J9tXQXwK3y=
2018-12-10T12:19:29.237165Z 0 [System] [MY-013170] [Server] /usr/sbin/mysqld (mysqld 8.0.13) initializing of server has completed
2018-12-10T12:19:32.011310Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.13) starting as process 3852
2018-12-10T12:19:33.144590Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2018-12-10T12:19:33.201007Z 0 [System] [MY-010931] [Server] /usr/sbin/mysqld: ready for connections. Version: '8.0.13'  socket: '/var/lib/mysql/mysql.sock'  port: 3306  MySQL Community Server - GPL.
2018-12-10T12:19:33.272837Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Socket: '/var/run/mysqld/mysqlx.sock' bind-address: '::' port: 33060

8.命令行登录和修改密码

[root@lifan ~]# mysql -uroot -p
Enter password: 

输入上一步骤查看的密码(输入时不显示任何字符):

[root@lifan ~]# mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor. 
...
mysql> 

修改密码:

mySql5.7之后,必须修改密码后才能操作.
并且对密码要求严格,至少8位,包含大小写等,若想设置成123456,则要以下两条命令:

mysql> set global validate_password.policy=0;
Query OK, 0 rows affected (0.00 sec)
mysql> set global validate_password.length=1;
Query OK, 0 rows affected (0.00 sec)

设置密码:

mysql> alter user user() identified by '123456';
Query OK, 0 rows affected (0.09 sec)

9.远程登录(Navicat)

注意:需关闭防火墙或者开放3306端口

service iptables stop #暂时关闭
chkconfig iptables off #设置成开启不自启
==========
/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT #开启3306端口 
/etc/rc.d/init.d/iptables save #保存配置
/etc/rc.d/init.d/iptables restart #重启服务 

远程登录会报如下错误:


首先查看用户表,发现登录主机是localhost,当然不能登录,把root用户的localhost设置为%,这样任意主机都可以连接。

mysql> use mysql;
Database changed
mysql> select user,host from user;
+------------------+-----------+
| user             | host      |
    +------------------+-----------+
| mysql.infoschema | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| root             | localhost |
+------------------+-----------+
4 rows in set (0.00 sec)

mysql> update user set host = '%' where user ='root';

再刷新一下:

flush privileges;

这时该问题已解决,若报如下错误,则是版本加密方式的改变

登录后请依次执行如下命令:

use mysql; 

ALTER USER 'root'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER; #更改加密方式

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';#更新用户密码

FLUSH PRIVILEGES;#刷新权限

再次连接成功:

posted @ 2018-12-10 22:59  李帆1998  阅读(3994)  评论(0编辑  收藏  举报