MySQL的安装与配置—详细教程
作者:mmseoamin日期:2023-12-05

MySQL的安装与配置——详细教程

一、MySQL简介

 MySQL关是一种关系数据库管理系统,所使用的 SQL 语言是用于访问数据库的最常用的标准化语言,其特点为体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,在 Web应用方面 MySQL 是最好RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。

二、下载安装包

  • 下载安装包
    • 进入官网(https://www.mysql.com/)后,点击"Dowload"。

      在这里插入图片描述

    • 接下来看到的页面是这样的,红色框框的链接就是mysql社区版,是免费的mysql版本,然后我们点击这个框框的链接

      在这里插入图你你你

    • 在这里,我们只要下载社区版的Server就可以了,可以根据自己的系统选择合适的版本,点击Download下载即可

      在这里插入图片描述

      *下载完成之后,可在自己本地文件夹中查看

      在这里插入图片描述

      三、安装与配置

      注意,安装的目录应当放在指定位置,其次,绝对路径中避免出现中文,推荐首选英文为命名条件

      MySQL的配置

      以管理员身份打开命令行(如下图所示),一定要是管理员身份,否则由于后续部分命令需要权限,出现错误!

      在这里插入图片描述

      • 跳转到mysql的bin目录下:

        在这里插入图片描述

      • 安装mysql的服务:
        mysqld --install
        

        在这里插入图片描述

        • 初始化MySQL:
          mysqld --initialize --console
          

          在这里,初始化会产生一个随机密码,如下图框框所示,记住这个密码,后面会用到

          在这里插入图片描述

          • 开启mysql的服务:
            net start mysql
            

            在这里插入图片描述

            • 登录验证
              mysql -u root -p
              
                mysql是否安装成功!要注意上面产生的随机密码,不包括前面符号前面的空格,否则会登陆失败,如果和下图所示一样,则说明你的mysql已经安装成功!注意,一定要先开启服务,不然会登陆失败,出现拒绝访问的提示符!
              

              在这里插入图片描述

              • 修改密码,便于记忆
                alter user 'root'@'localhost' identified by 'root'
                

                在这里插入图片描述

                到此安装步骤基本完成

                四、MySQL环境变量的设置

                方便登录操作MySQL,在这里我们设置一个全局变量

                • 点击"我的电脑"–>“属性”–>‘‘高级系统设置’’–>‘‘环境变量’’,接下来如下图所操作

                  在这里插入图片描述

                  在这里插入图片描述

                • 把新建的mysql变量添加到Path路径变量中,点击确定,即完成

                  在这里插入图片描述

                • 可以在MySQL的安装目录下面创建一个ini或cnf配置文件,配置一些MySQL的编码格式,端口号等

                  在这里插入图片描述

                  在这里插入图片描述

                  [mysqld]
                  character-set-server=utf8mb4
                  bind-address=127.0.0.1
                  port=3306
                  default-storage-engine=INNODB
                  [mysql]
                  default-character-set=utf8mb4
                  [client]
                  default-character-set=utf8mb4
                  

                  配置完成

                  五、安装过程中可能会出现的问题

                  1. 用navicat连接MySQL8+时会出现2059错误
                  • 原因:

                    这是由于在mysql8之前的版本中加密规则为mysql_native_password,而mysql8以后版本的MySQL使用的是caching_sha2_password验证方式,但此时的navicat还没有支持这种验证方式。

                  • 解决方法:

                    一种是更新navicat驱动来解决此问题,一种是将mysql用户登录的加密规则修改为mysql_native_password。本文采用第二种方式。

                  • 解决过程:

                    在命令行中登录数据库时不会出现2059错误,所以在命令行中登录数据库,

                    执行下面的命令。

                     ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; 
                    
                    • 刷新权限
                       FLUSH PRIVILEGES; 
                      

                      六、MySQL卸载

                      卸载很方便,使用管理员权限打开命令提示符,依次输入下面命令。

                      1. 结束MySQL服务:
                      net stop mysql
                      
                      1. 删除MySQL服务:
                      mysqld -remove mysql
                      

                      sc delete mysql
                      
                      1. 删除MySQL的文件夹
                      2. 删除MySQL环境变量

                      七、卸载解压版MySQL

                      1. 关闭服务以管理员身份运行cmd,命令:
                      net stop mysql
                      
                      1. 卸载服务以管理员身份运行cmd,命令:
                      mysqld -remove [服务名]
                      
                      1. 删除文件,删除mysql安装目录

                      2. 删除注册表信息

                      清除注册表中的该MySQL服务,有几个地方:
                      HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL 目录删除
                      HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Eventlog\Application\MySQL 目录删除
                      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\MySQL 目录删除
                      注册表中的ControlSet001、ControlSet002不一定是001和002,可能是ControlSet005、006之类,删除的时候都删除就可以