win11安装mysql8.3.0压缩包版 240206

mysql社区版安装包版windows安装包下载地址

在系统环境变量path无点.的情况下

  • powershell 可以 .\./ 开头表示当前文件夹
  • cmd 可以直接命令或.\开头, 不能./开头
    所以 .\ 在cmd和powershell中通用

步骤

  1. 在解压目录 .\mysqld --initialize-insecure root无密码初始化
  2. .\mysqld install 安装服务
  3. net start mysql 启动MySQL服务
  4. .\mysql -uroot 登录
  5. CREATE USER IF NOT EXISTS 'remote'@'%' IDENTIFIED BY 'remote'; GRANT ALL ON *.* TO 'remote'@'%' WITH GRANT OPTION; FLUSH PRIVILEGES; 创建远程用户
  6. net stop mysql 停止服务
  7. .\mysqld remove 移除服务
  8. 拷贝整个解压安装目录到另一个文件夹, 或者换个电脑, 实现数据迁移 , 同版本同配置可只拷贝data文件夹
  9. .\mysqld install 安装服务
  10. .\net start mysql 启动MySQL服务

win11安装mysql8.3.0压缩包版 240206

mysql社区版安装包版windows安装包下载地址

解压安装初始化启动服务

  1. 解压到自定义安装目录

  2. 以管理员身份运行powershell或cmd进入安装目录
    powershell在环境变量无点.时不会执行本目录命令

    要加.\命令./命令
    cmd在环境变量无点.时也可直接执行本目录的程序
    cmd切换其它盘用 cd /d

  3. 执行 mysqld --initialize-insecure --console 无密码安装

    环境变量无点.,也没有添加安装目录到系统环境变量path时的powershell要特别指明命令在当前目录,用.\./

    正反斜杆都可以

powershell 复制代码
.\mysqld --initialize-insecure --console

powershell 复制代码
./mysqld --initialize-insecure --console

powershell 复制代码
.\mysqld.exe --initialize-insecure --console

powershell 复制代码
./mysqld.exe --initialize-insecure --console

cmd运行默认会在当前目录查找,不需要环境变量path带点.

powershell 复制代码
mysqld.exe --initialize-insecure --console

注意: 初始化时,安装文件夹不能有data文件夹, 初始化后会生成data文件夹

  1. 以管理身份运行mysqld --install 安装MySql服务

--install 的两横可以省略, 可以写成 -installinstall

sh 复制代码
mysqld install
sh 复制代码
mysqld -install
sh 复制代码
mysqld --install

执行 mysqld --install 必须要管理员权限 ! ,

可以给服务取名 ,默认的服务名为 mysql

mysqld install 等效 mysqld install mysql

比如可以自定义服务名称为 MysqlServiceName2 👇

sh 复制代码
mysqld install MysqlServiceName2

查看mysqlmysqld命令帮助的命令

sh 复制代码
.\mysql --verbose --help
sh 复制代码
.\mysqld --verbose --help
  1. 启动mysql服务

启动MySQL服务的几种方法

Windows可以用 net start 服务名sc start 服务名sc.exe start 服务名 来启动服务

powershell 复制代码
net start mysql
net start install时自定义的名称

powershell 复制代码
sc.exe start mysql
sc.exe start "mysql"
sc.exe start install时自定义的名称
sc.exe start "有空格 的名称要加引号"

sc 在cmd中可以写成scsc.exe
sc 在powershell中会判定为Set-Content 命令,所以,
sc 在powershell中要写成sc.exe

powershell 复制代码
sc.exe start mysql
powershell 复制代码
Start-Service mysql
powershell 复制代码
Start-Service -Name "mysql"

mysql是MySQL默认的服务名, 可以在执行 mysqld --install 服务名 时指定,

省略服务名mysqld --install , 相当于 mysqld --install mysql
net start mysqlsc start mysql 启动MySQL服务

对应的,停止MySQL服务的几种方法

powershell 复制代码
net stop mysql
powershell 复制代码
sc.exe stop mysql
powershell 复制代码
Stop-Service mysql
powershell 复制代码
Stop-Service -Name mysql

查看服务状态

sc query 服务名 查看服务

powershell 复制代码
sc.exe query mysql
powershell 复制代码
get-service mysql
powershell 复制代码
get-service -Name mysql

停止服务,移除服务,卸载

停止服务
powershell 复制代码
net stop mysql
powershell 复制代码
sc.exe stop mysql
powershell 复制代码
Stop-Service -Name mysql
查看服务状态
powershell 复制代码
sc.exe query mysql
powershell 复制代码
get-service -name mysql
卸载服务

卸载,删除,移除MySQL服务可以用 mysqld --remove MySQL服务名sc delete 服务名

  • mysqld --remove MySQL服务名
  • sc.exe delete 服务名

mysqld是MySQL提供的命令 , sc是Windows提供的命令

mysqld --remove MySQL服务名 移除MySQL服务, 如果不指定服务名, 则服务名=mysql

mysqld --remove相当于mysqld --remove mysql

powershell 复制代码
mysqld --remove
power 复制代码
mysqld --remove mysql
power 复制代码
sc.exe delete mysql
powershell 复制代码
### powershell版本必须大于等于6
Remove-Service -Name mysql

登录

sql 复制代码
./mysql -uroot

创建远程用户

创建remote用户的语句模板

比如创建一个名为remote的用户,可以写在一行,以分号分隔

sql 复制代码
CREATE USER IF NOT EXISTS 'remote'@'%' IDENTIFIED BY 'remote'; GRANT ALL ON *.* TO 'remote'@'%' WITH GRANT OPTION; FLUSH PRIVILEGES;
创建远程root的语句模板

自带的 root@'localhost' 只能本地登陆,

创建 root@'%' , 并将 root@'localhost' 的权限授予 root@'%'

sql 复制代码
CREATE USER IF NOT EXISTS 'root'@'%' IDENTIFIED BY '密码'; GRANT ALL ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

创建 root@'%' , 并让 root@'%'扮演root@'localhost' 的角色 , 并设置为默认角色

sql 复制代码
CREATE USER IF NOT EXISTS 'root'@'%' IDENTIFIED BY '密码';
GRANT root@'localhost' TO 'root'@'%'; SET DEFAULT ROLE root@'localhost' TO 'root'@'%';
FLUSH PRIVILEGES;

权限和角色两者都加持

sql 复制代码
CREATE USER IF NOT EXISTS 'root'@'%' IDENTIFIED BY '密码';
GRANT ALL ON *.* TO 'root'@'%' WITH GRANT OPTION;
GRANT root@'localhost' TO 'root'@'%';
SET DEFAULT ROLE root@'localhost' TO 'root'@'%';
FLUSH PRIVILEGES;

或者直接将 root@localhost 改为 root@%

sql 复制代码
update mysql.user set host='%' where user='root'; flush privileges;
sql 复制代码
UPDATE mysql.user SET host='%' WHERE user='root'; FLUSH PRIVILEGES;
相关推荐
@月落4 分钟前
alibaba获得店铺的所有商品 API接口
java·大数据·数据库·人工智能·学习
楠枬14 分钟前
MySQL数据的增删改查(一)
数据库·mysql
goTsHgo19 分钟前
从底层原理上解释 clickhouse 保证完全的幂等性
数据库·clickhouse
充值内卷32 分钟前
WPF入门教学四 WPF控件概述
windows·ui·wpf
阿华的代码王国2 小时前
MySQL ------- 索引(B树B+树)
数据库·mysql
Hello.Reader2 小时前
StarRocks实时分析数据库的基础与应用
大数据·数据库
执键行天涯2 小时前
【经验帖】JAVA中同方法,两次调用Mybatis,一次更新,一次查询,同一事务,第一次修改对第二次的可见性如何
java·数据库·mybatis
liupenglove2 小时前
golang操作mysql利器-gorm
mysql·golang
yanglamei19622 小时前
基于GIKT深度知识追踪模型的习题推荐系统源代码+数据库+使用说明,后端采用flask,前端采用vue
前端·数据库·flask
叫我:松哥3 小时前
基于Python flask的医院管理学院,医生能够增加/删除/修改/删除病人的数据信息,有可视化分析
javascript·后端·python·mysql·信息可视化·flask·bootstrap