下载8.0.26版本,下载地址:https://downloads.mysql.com/archives/installer/
mysql8.0安装
今天的这个实验环境,我用的是VMvare的win10系统来做基础实验环境
将下载好的软件拷贝到其他盘符下的文件中,并点击安装
选择server only,下一步
选择执行该程序
程序会让你安装c++程序
点击next
继续执行
当状态是ready to config时点击next
mysql默认端口号3306,orale的是1521
身份验证选择第一个默认使用加强认证的密码
按照linux的习惯,这里MySQL的管理用户是root ,密码自己设置;
并且可以添加其他用户,这里输入两次root的用户的密码,这里提示虚弱的密码不用理会;
windows server name 指的是服务的名字,都保持默认,然后下一步
在这个申请配置 页面中,我们要配置8个模块,每个模块必须要正确配置,如果不正确,可以查看Log页签的输出情况;
状态成功后,点击finish
继续下一步
看到这个面提示安装完成
检查mysql8安装状态
windows下打开服务
查看是否有mysql80的服务名称,针对这个服务名称,你也可以在安装的过程中定义名称
或者查看mysql默认的安装位置C:\Program Files\MySQL\
这里面放置的都是mysql软件对应的程序
还有一个文件夹则存放着mysql中的数据C:\ProgramData\MySQL\MySQL Server 8.0
需要提前将打开隐藏磁盘选项勾选
看到这个文件是不是很熟悉?曾在linux中配置msql文件是一样的!
登录mysql
dos 命令访问方式
切到路径:C:\Program Files\MySQL\MySQL Server 8.0\bin
当你打开这个程序时,你会发现闪退现象,因为mysql.exe执行文件需要带参数执行,你可以理解成这就是一个客户端!所以在图形界面执行时会自动结束!
解决方案:打开cmd控制台
输入MySQL客户端的一些参数加以运行,简单说下mysql客户端的基本参数
-h 服务端的IP 地址
-u 用户名
-p 密码 (一般回车后输入,不显示在屏幕上)
C:\Windows\system32>mysql -h 127.0.0.1 -uroot -p
遇到这样的报错需要更改系统的环境变量
打开高级系统设置
打开环境变量
打开系统变量,编辑path
点击新建,将这个C:\Program Files\MySQL\MySQL Server 8.0\bin路径粘贴进去。
确定之后,将之前打开的cmd窗口关闭后再次打开,输入mysql连接命令
这种连接方式不是推荐的,为什么呢,我们往下面看就知道了!
简单的来说,MySQL数据库对应的不同的数据库,查询数据库如下
数据库中有很多表,每个表中有很多数据库!进入到mysql数据库,提示切换成功!
在mysql数据库中,查询表的命令,tables加s的意思复数的意思,意思就是有很多表吧!
查询user表中的内容:mysql> select * from user;
从查询结果上来看,这几乎都是不规则的表格形式,很不友好,这也是不推荐的连接方式的主要原因!后面的文章我会分享其他的连接方式!
退出数据库 quit exit \q 都行!
卸载mysql
在安装未成功,或其他问题时,需要卸载,首先将mysql服务停止!
然后,输入appwiz.cpl.进行卸载
删除这两项即可!
最后删除mysql的软件相关的内容即可!(包括那个隐藏的数据文件夹!)
最后删除环境配置就可以了!
客户端访问
这里我推荐Navicat ,不论是运维,还是开发人员都是用的比较多的一款工具
这里我用的是12免安装版,
链接:https://pan.baidu.com/s/1CEcIRW3PanHtYmWTxIahVw
提取码:rjjh
解压出来后,我的个人习惯将这个解压包移动到mysql的安装目录中....
双击该程序即可
点击连接mysql,从这里面我们能够看到该程序能够连接很多数据库产品。
目前是我本机,如果是其他的,要问清楚IP地址和端口即可
然后点击连接测试,出现2059的错误
原因在于:改变加密规则或者更新navicat驱动
进入到数据库中,设置密码永不过期
alter user 'root'@'localhost' identified by '123.com!' password expire never;
再次设置加密规则为mysql_native_password
mysql> alter user 'root'@'localhost' identified with mysql_native_password by '123.com!';
测试连接是否成功
点击确定后,双击这个实例后有默认的数据库
例如我在mysql数据库中查看user表,得出来的结果会友好一些!以二维表的形式展现!