准备工作
第一步:先查看是否安装过mysql服务(如果没有安装过mysql,可直接进行安装工作)
rpm -qa | grep -i mysql
第二步:卸载mysql服务
yum -y remove mysql-*
一般用rpm -e 的命令删除mysql,这样表面上删除了mysql,可是mysql的一些残余程序仍然存在,并且通过第一步的方式也查找不到残余,而yum命令比较强大,可以完全删除mysql.(ps:用rpm删除后再次安装的时候会提示已经安装了,这就是rpm没删除干净的原因)
第三步:查找并删除所有关于mysql的文件及目录
find / -name mysql
查找mysql的一些文件及目录,把所有出现的文件及目录删除,可使用rm -i命令或者rm -rf命令,执行rm -rf命令时需注意,该命令无任何提示,谨慎使用
第四步:删除/etc目录下的配置文件
rm -i /etc/my.cnf
第五步:删除mysql的默认密码
rm -i /root/.mysql_sercret
删除mysql的默认密码,如果不删除,以后安装mysql这个sercret中的默认密码不会变,使用其中的默认密码就可能会报类似Access denied for user ‘root@localhost’ (using password:yes)的错误.
第四步与第五步均依照提示输入y进行删除
安装
第一步:配置Mysql 8.0安装源
sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
第二步:安装Mysql 8.0
sudo yum --enablerepo=mysql80-community install mysql-community-server
提示下载插件选择:y

看到complet(完毕)就是安装完啦
第三步:启动mysql
sudo service mysqld start
显示如下:
启动完成
第五步:查看mysql服务运行状态
service mysqld status
显示如下:
第六步:查看root临时密码
安装完mysql之后,会生成一个临时的密码让root用户登录
grep "A temporary password" /var/log/mysqld.log

第七步:更改临时登陆密码
输入:mysql -uroot -p
在Enter password:后面输入临时密码
登录成功
输入:ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘new password’;
会提示出错。如图所示:

出现此种情况是因为新密码复杂度不符合MySQL的要求
解决方案如下:
1、把密码改复杂点,让它符合密码验证策略,这个当然是最好的,符合国际惯例
2、把密码验证策略改简单点,让它适用简单的密码,这个符合懒人的做法
查看密码验证策略方法,运行如下命令:
SHOW VARIABLES LIKE 'validate_password.%';

官方文档解释:
validate_password.length 是密码的最小长度,默认是8
validate_password.policy 验证密码的复杂程度
validate_password.check_user_name 用户名检查,用户名和密码不能相同
密码长度修改为4:
set global validate_password.length=4;

密码复杂度修改为0:
set global validate_password.policy=0;

去掉不允许用户名和密码相同的要求:
set global validate_password.check_user_name=off;

然后运行修改密码的命令:
ALTER USER 'root'@'localhost' identified by '1q2w3e4r5t';

修改成功
第八步:创建并配置远程登陆用户
create user 'user'@'%' identified by 'password';
%代表任何IP皆可访问,可更换为指定IP
grant all privileges on db.* to 'user'@'%' with grant option;
添加指定数据库访问权限
flush privileges;
刷新MySQL的系统权限相关表
第九步:客户端连接数据库
推荐几款好用的数据库图形化管理工具
1、Navicat:目前开发者用的最多的一款mysql图形用户管理工具,界面简洁、功能也非常强大,与微软的SQLServer管理器很像,简单易学,支持中文,提供免费版本。
2、SQLyog:webyog公司的产品,一款易于使用、快速而简洁的mysql数据库图形化管理工具,可以直观的在任何地点高效地管理你的数据库。
3、PhpMyadmin:这款是用PHP编程语言开发的基于web方式的网页版mysql图形化管理工具,支持中文、界面友好、简洁,方便管理,但是对于数据量大的操作容易导致页面请求超时。
4、Adminner:一个类似于phpMyAdmin的MySQL管理客户端。整个程序只有一个PHP文件,易于使用和安装。Adminer支持多语言(已自 带11种翻译语言文件,可以按自己的需求翻译相应的语言)。支持PHP4.3+,MySQL 4.1+以上的版本。
5、MySQL Workbench:MySQL Workbench是一个统一的可视化开发和管理平台,该平台提供了许多高级工具,可支持数据库建模和设计、查询开发和测试、服务器配置和监视、用户和安全管理、备份和恢复自动化、审计数据检查以及向导驱动的数据库迁移。 MySQL Workbench是MySQL AB发布的可视化的数据库设计软件,它的前身是 FabForce 公司的 DDesigner 4。 MySQL Workbench 为数据库管理员、程序开发者和系统规划师提供可视化设计、模型建立、以及数据库管理功能。它包含了用于创建复杂的数据建模ER模型,正向和逆向数据库工程,也可以用于执行通常需要花费大量时间和需要的难以变更和管理的文档任务。MySQL工作台可在Windows,Linux和Mac上使用。
6、MySQLDumper:MySQLDumper使用PHP开发的MySQL数据库备份恢复程序,解决了使用PHP进行大数据库备份和恢复的问题,数百兆的数据库都可以方便的备份恢复,不用担心网速太慢导致中间中断的问题,非常方便易用。这个软件是德国人开发的,还没有中文语言包。
7、MySQL GUI Tools:MySQL GUI Tools是MySQL官方提供的图形化管理工具,功能很强大,值得推荐,可惜的是没有中文界面。
8、MySQL ODBC Connector:MySQL官方提供的ODBC接口程序,系统安装了这个程序之后,就可以通过ODBC来访问MySQL,这样就可以实现SQLServer、Access和MySQL之间的数据转换,还可以支持ASP访问MySQL数据库。
9、MySQL-Front:小巧的管理Mysql的应用程序,主要特性包括多文档界面,语法突出,拖拽方式的数据库和表格,可编辑/可增加/删除的域,可编辑/可插入/删除的记录,可显示的成员,可执行的SQL 脚本,提供与外程序接口,保存数据到CSV文件等。
10、dbForge Studio for MySQL:dbForge Studio for MySQL 是一款强大的工具,专门用来自动化和简单化MySQL的工作,它提供了一种简单的方式来探讨和维护现有的数据库,设计复合的SQL语句,以不同的方式查询和操作数据。
11、DBeaver:基于 Java 开发,可以运行在各种操作系统上,包括:Windows、Linux、macOS 等。采用 Eclipse 框架开发,支持插件扩展,并且提供了许多数据库管理工具:ER 图、数据导入/导出、数据库比较、模拟数据生成等。通过 JDBC 连接到数据库,可以支持几乎所有的数据库产品,包括:MySQL、PostgreSQL、MariaDB、SQLite、Oracle、Db2、SQL Server、Sybase、MS Access、Teradata、Firebird、Derby 等等。
12:DataGrip:DataGrip 是 JetBrains 发布的多引擎数据库环境,支持 MySQL 和 PostgreSQL,Microsoft SQL Server 和 Oracle,Sybase,DB2,SQLite,还有 HyperSQL,Apache Derby 和 H2。相信好多开发人员都用过JetBrains的产品,界面以及操作方式与IDEA如出一辙,对于开发人员相当友好。
注意:连接之前要检查服务是否已正常启动,然后检查防火墙端口是否开放