加入收藏 | 设为首页 | 会员中心 | 我要投稿 航空爱好网 (https://www.52kongjun.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql该版本与您运行的windows_windows下安装 mysql 8

发布时间:2022-10-27 12:40:28 所属栏目:MySql教程 来源:
导读:  最新版本可以在 MySQL 下载 中下载中查看。

  点击 Download 按钮进入下载页面,点击下图中的 No thanks, just start my download. 就可立即下载:

  下载完后,我们将 zip 包解压到相应的目录,这里
  最新版本可以在 MySQL 下载 中下载中查看。
 
  点击 Download 按钮进入下载页面,点击下图中的 No thanks, just start my download. 就可立即下载:
 
  下载完后,我们将 zip 包解压到相应的目录,这里我将解压后的文件夹放在 C:\web\mysql-8.0.11 下。
 
  接下来我们需要配置下 MySQL 的配置文件
 
  打开刚刚解压的文件夹 C:\web\mysql-8.0.11 ,在该文件夹下创建 my.ini 配置文件,编辑 my.ini 配置以下基本信息:
 
  [mysql]
 
  #设置mysql客户端默认字符集
 
  default-character-set=utf8
 
  [mysqld]
 
  # 设置3306端口
 
  port = 3306
 
  # 设置mysql的安装目录
 
  basedir=C:\web\mysql-8.0.11
 
  # 设置mysql数据库的数据的存放目录
 
  datadir=C:\web\sqldata
 
  # 允许最大连接数
 
  max_connections=20
 
  # 服务端使用的字符集默认为8比特编码的latin1字符集
 
  character-set-server=utf8
 
  # 创建新表时将使用的默认存储引擎
 
  default-storage-engine=INNODB
 
  bind-address = 127.0.0.1
 
  接下来我们来启动下 MySQL 数据库:
 
  以管理员身份打开 cmd 命令行工具,切换目录:
 
  cd C:\web\mysql-8.0.11\bin
 
  初始化数据库:
 
  mysqld --initialize --console 或者
 
  mysqld --initialize --user=root --console
 
  执行完成后,会输出 root 用户的初始默认密码,如:
 
  ...
 
  2018-04-20T02:35:05.464644Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: APWCY5ws&hjQ
 
  ...
 
  APWCY5ws&hjQ 就是初始密码mysql主机名,后续登录需要用到,你也可以在登陆后修改密码。
 
  输入以下安装命令:
 
  mysqld install
 
  启动输入以下命令即可:
 
  net start mysql
 
  注意:执行安装命令启动命令时需以管理员身份启动 cmd
 
  登录 MySQL
 
  当 MySQL 服务已经运行时, 我们可以通过 MySQL 自带的客户端工具登录到 MySQL 数据库中, 首先打开命令提示符, 输入以下格式的命名:
 
  mysql -h 主机名 -u 用户名 -p
 
  参数说明:
 
  -h : 指定客户端所要登录的 MySQL 主机名, 登录本机(localhost 或 127.0.0。1)该参数可以省略;
 
  -u : 登录的用户名;
 
  -p : 告诉服务器将会使用一个密码来登录, 如果所要登录的用户名密码为空, 可以忽略此选项。
 
  如果我们要登录本机的 MySQL 数据库,只需要输入以下命令即可:
 
  mysql -u root -p
 
  按回车确认, 如果安装正确且 MySQL 正在运行, 会得到以下响应:
 
  Enter password:
 
  若密码存在, 输入密码登录, 不存在则直接按回车登录。登录成功后你将会看到 Welecome to the MySQL monitor... 的提示语。
 
  然后命令提示符会一直以 mysq> 加一个闪烁的光标等待命令的输入, 输入 exit 或 quit 退出登录。
 
  修改密码:(修改密码的语法已经改变)
 
  ALTER USER 'root'@'localhost' IDENTIFIED BY '123456'
 
  Navicat连接不上 1251 client does no support authentic :
 
  户端使用navicat for mysql。本地安装了mysql 8.0.12。但是在连接的时候提示:
 
  主要原因是mysql服务器要求的认证插件版本与客户端不一致造成的。
 
  打开mysql命令行输入如下命令查看,系统用户对应的认证插件:
 
  select host,user,plugin,authentication_string from mysql.user;
 
  可以看到root用户使用的plugin是caching_sha2_password,mysql官方网站有如下说明:
 
  意思是说caching_sha2_password是8.0默认的认证插件,必须使用支持此插件的客户端版本。
 
  plugin的作用之一就是处理后的密码格式和长度是不一样的,类似于使用MD5加密和使用base64加密一样对于同一个密码处理后的格式是不一样的。
 
  解决方法:
 
  我不希望更新本地的客户端版本,想直接使用原来的环境来链接。
 
  解决方法是将root的plugin改成mysql_native_password。相当于降了一级。
 
  mysql官方网站提供了从mysql_old_password升级到mysql_native_password,我们可以仿照这个。官方原文如下:
 
  这里改成:
 
  ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
 
  这行代码有两层含义,第一:修改root的密码为'root',摒弃原来的旧密码。第二:使用mysql_native_password对新密码进行编码。
 
  修改完成后再用客户端登陆成功:
 
  补充:
 
  如果在修改插件的时候出现错误,可现将插件改为 mysql_old_password,然后再升级成mysql_native_password
 

(编辑:航空爱好网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!