Windows安装MySQL

Windows安装MySQL

一.Mysql简介

MySQL是一个开源的关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一, 越来越多的企业选择使用MySQL,而放弃商用收费的Oracle

ps : MySQL有很多版本(5.6、5.7、8.0) 目前企业里面用的比较多的还是5.6(稳定版本)左右

二、常见数据库管理软件默认端口号

  • MySQL : 3306 (mysqld服务端-----mysql客户端)
  • redis : 6379
  • mongodb : 27017
  • django : 8000
  • flask : 5000
  • sqlserver : 3306
  • oracle : 1521

三.Windows安装

1.首先进入mysql官网下载

  • mysql官网 : https://www.mysql.com/
  • 选择安装版本 : 5.6 左右

Windows安装MySQL_第1张图片

Windows安装MySQL_第2张图片

Windows安装MySQL_第3张图片

Windows安装MySQL_第4张图片

2.解压并添加到环境变量

image-20210129085651014

Windows安装MySQL_第5张图片

Windows安装MySQL_第6张图片

3.将Mysql添加成系统服务并启动服务端

  • 服务端的配置需要一管理员身份运行cmd

Windows安装MySQL_第7张图片

  • 将mysqld.exe添加为服务项, 让其可以后台运行

Windows安装MySQL_第8张图片

  • 移除Mysql服务
mysqld --remove

3.登入客户端mysql

  • 因为是在一台机器上做实验, 客户端我们可以使用非管理员用户
  • 登入的两种方式
    • 指定端口IP和端口登入(mysql默认端口3306) : mysql -h 127.0.0.1 -P 3306 -uroot -p
    • 因为是在同一台机器, 我们可以省略IP和端口 : mysql -uroot -p

Windows安装MySQL_第9张图片

Windows安装MySQL_第10张图片

4.修改客户端密码

  • 命令 : mysqladmin -uroot -p password [你的密码]

Windows安装MySQL_第11张图片

  • 上面修改密码成功后, 我们登入的是后没有指定密码, 其实可以直接指定密码登入

Windows安装MySQL_第12张图片

5.配置客户端配置文件

  • 配置目的1 : 实现字符编码的统一(不统一会乱码)

Windows安装MySQL_第13张图片

  • 配置目的2 : 实现不用输入密码和用户名,直接登入

Windows安装MySQL_第14张图片

  • 先进入解压的mysql文件下找到.ini后缀的配置文件, 默认是my-default.ini
  • mysql启动时就会检测mysql-5.6.48-winx64文件夹下的.ini后缀名的文件, 并加载该文件配置

Windows安装MySQL_第15张图片

  • 编辑内容
  • ps : 注释可以有中文, 但配置不能存在中文
";" 分号是注释的意思

; 在执行mysqld命令时,下列配置会生效,即mysql服务启动时生效
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci

; 针对客户端命令的全局配置,如果登陆时[mysql]中没有指定用户名,密码而[client] 中指定了, 以[client] 为准
[client]
default-character-set=utf8

; 只针对mysql这个客户端的配置,2中的是全局配置,而此处的则是只针对mysql这个命令的局部配置,配置使用先自己, 自己没有再全局
[mysql]
default-character-set=utf8

; 指定你的登录用户名,下次登入时不需要指定用户名
user="root"

; 指定登录密码,下次登入时不需要登入密码(密码必须和你之前设置的密码一样,不然验证不通过)
password="123456"  

ps : 5.6.38版本 没有用户名会报错 5.6.40版本 没有用户名不会报错

  • 保存后改名 my.ini, 或者在之前直接新建一个my.ini配置文件

image-20210129110431165

  • mysql数据库可以存入emoji表情
  • 创建my.cnf文件添加配置, 重启MySQL, 保存的表情数据就可以查看到了
; 设置数据库字符编码为utf8mb4_general_ci  设置相应表字段字符编码为utf8mb4_general_ci
[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'

[client]
default-character-set = utf8mb4
 
[mysql]
default-character-set = utf8mb4

image-20210129130304225

6.重启MySQL服务,再查看结果

  • 重启

Windows安装MySQL_第16张图片

  • 查看mysql信息

Windows安装MySQL_第17张图片

四.密码破解

方式一 : 跳过密码授权机制更改新密码

  • 步骤:
    1. 先关闭mysql服务
    2. 设置跳过授权表: mysqld --skip-grant-tables
    3. 新开一个cmd, 正常登入客户端mysql, 不需要密码
    4. update mysql.user set password=password('123') where user='root' 设置新密码123
    5. 使用flush privileges刷新权限
    6. 关闭之前打开的窗口重新启动mysql, 使用新密码登入

Windows安装MySQL_第18张图片

换另一个cmd进行登入并修改密码

Windows安装MySQL_第19张图片

关闭之前窗口, 重新启动服务

Windows安装MySQL_第20张图片

方式二 :

大致一样, 在第二步的时候变了一下 : 编辑my.ini配置文件

[mysqld]
skip-grant-tables
; [mysqld]下加入这一行"跳过授权表"

后面的步骤一模一样, 其实,本质上都是一样的, 都是跳过授权表

五、你可能会踩的坑

  • 重置密码遇到ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using passwor:yes)问题
  • ./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file
  • 修改用户密码报错ERROR 1054 (42S22): Unknown Column ‘Password’ In 'Field List’解决办法
  • mysql5.7密码过期ERROR 1862 (HY000): Your password has expired. To log in you must change
  • MySQL出现:ERROR 1049 (42000): Unknown database 'XXX’解决方法

你可能感兴趣的:(Python学习笔记,MySQL学习笔记,数据库,mysql,java,linux,python)