MySQL
一、MYSQL简介
1.1 常见指令
启动服务:net start mysql;
关闭服务:net stop mysql;
查看服务状态:sc queryex mysql;
使用服务:use mysql;
撤销上一句:\c
获取系统对语句的提示 help xxx;(xxx即为语句名称)
进入mysql界面:mysql -u root -p(无分号)
1.2 Mysql用户的基本信息
mysql.user => host(本地|外地),user(用户名),authentication_string(密码);
二、安装
2.1 常见的安装方式:
xxx.exe -> 双击安装
xxx.zip|rar -> 解压 => 配置(环境变量,特定文件(引擎、)) => 初始化 =》 启动服务 => 启动客户端连接
2.2 MYSQL安装
1、【管理员权限】解压到:C:\mysql-8.0.31-winx64
2、根目录下添加配置文件 my.ini
---------------------------------------------------
[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
[mysqld]
port=3306
basedir=C:\mysql-8.0.31-winx64
datadir=C:\mysql-8.0.31-winx64\data
max_connections=200
character-set-server=utf8mb4w
default-storage-engine=INNODB
[mysqld_safe]
log-error=C:\mysql-8.0.31-winx64\log\mysqld.log
---------------------------------------------------
3、将bin目录添加环境变量
4、【管理员身份起动DOS】并完成初始化
mysqld --initialize --console
-----------------------------------------------------------------------
2023-05-11T01:22:50.046027Z 0 [System] [MY-013169] [Server] C:\mysql-8.0.31-winx64\bin\mysqld.exe (mysqld 8.0.31) initializing of server in progress as process 21536
2023-05-11T01:22:50.070377Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-05-11T01:22:53.727524Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-05-11T01:22:55.519008Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: 78*ehoRf9ABc
------------------------------------------------------------------------
5、安装成服务
mysqld --install
6、启动服务
net/sc start mysql
查看服务状态
sc queryex mysql
-------------------------------------------------------------------------
C:\Windows\system32>sc queryex mysql
SERVICE_NAME: mysql
TYPE : 10 WIN32_OWN_PROCESS
STATE : 4 【RUNNING】
(STOPPABLE, PAUSABLE, ACCEPTS_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
PID : 24152
FLAGS :
-------------------------------------------------------------------------
三、基本操作
修改用户密码
alter user user() identified by 'YOUR PASSWORD'; user() => 表示当前用户
设置密码安全等级
set global validate_password.policy = 0;
创建用户
create user root@'%' identified by 'ybremote' password expire never; => 创建永不过期的用户,用户名为root,可以给远程主机登录。
为用户授权
grant all on . to root@'%' => 向指定用户授予全部权限
刷权限
flush privileges;
可以在虚拟机中创建允许远程操作的用户,并收取权限,然后在虚拟机中链接,便于操控mysql中的数据库。
四、常见问题及其解决方法
4.1 配置正常但无法连接
将服务关闭之后重启。
查看服务状态:sc queryex mysql/打开服务管理窗口
服务管理窗口的打开方式:WIN+R+services.msv
4.2 没卸载干净,存在旧版本的冲突
所有的软件在官方授权的安装的时候就会在注册表生成一条记录,如果发现注册表中已存在同名的记录,就不会选择去添加。
需要删除旧版本在注册表中的记录(先在程序面板删除软件,再进入到注册表编辑器中删除)
注册表的打开方式: WIN+R+regedit => 注册表 => 计算机 => HKEY_LOCAL_MACHINE => SYSTEM => ControlSet001 => Services
4.3 时区问题
命令:set global time_zone = '+8:00';
配置:my.ini
[mysqld]
default-time-zone='+08:00'
idea:database->mysql->Advanced
serverTimeZone : Asia/Shanghai
4.4 Mysql忘记密码了怎么办?
https://zhuanlan.zhihu.com/p/631613129