MySQL安装步骤
一、下载地址:
https://downloads.mysql.com/archives/community/
解压到无中文无空格的目录下
二、在mysql-8.0.25-winx64目录下创建my.ini 文件 用于初始化,默认化字体端口
[mysqld]
#设置3306端口
port=3306
character-set-server=utf8
#创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
[mysql]
#设置mysql客户端默认字符集
default-character-set=utf8
[client]
#设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8
三、配置环境变量
系统变量中添加MYSQL_HOME E:\mysql\mysql-8.0.25-winx64
path中添加 %MYSQL_HOME%\bin
四、开始菜单cmd管理员身份运行命令提示窗口(注意:所有命令均以管理员身份打开命令提示符窗口)
1 切换到解压目录的bin文件夹(E:\mysql\mysql-8.0.25-winx64\bin>)
E:
cd E:\mysql\mysql-8.0.25-winx64\bin
2 初始化MySQL 生成随机密码for root@localhost: XXXXX 在文件夹中多出一个Data文件 用于放MySQL数据
mysqld --initialize --user=mysql --console
3 安装MySQL服务(在任务管理器-服务中可以看到)
mysqld --install
4 启用MySQL服务
net start MySQL
报错 E:\mysql\mysql-8.0.25-winx64\bin>net start mysql 'net' 不是内部或外部命令,也不是可运行的 程序或批处理文件。 解决方案
1 尝试更改环境变量为%MYSQL_HOME%\bin;C:\Widows\system32 无效
2 尝试在C盘运行该命令 报错 net start MySQL 发生系统错误 193。 *** 不是有效的 Win32 解决方案
删除mysql\mysql-8.0.25-winx64\bin文件夹下的mysqld空文件夹(删了后重新搜索一下,确保删除),重新在c盘运行net start mysql(这里切换了盘符C:\Windows\System32>)
5 登录mysql(切换回E:\> mysql\mysql-8.0.25-winx64\bin (这里切换了盘符))执行
mysql -uroot -q 输入上面生成的随机密码 (如果忘记,删除Data文件夹回到第2步)成功进入 mysql>
6 在mysql>下 修改密码
ALTER USER 'root'@'localhost'IDENTIFIED WITH mysql_native_password BY '123456';
Query OK, 0 rows affected (0.01 sec) 查询正常,0行受影响(0.01秒)
7 修改root用户的权限
create user 'root'@'%'IDENTIFIED WITH mysql_native_password BY '123456';
Query OK, 0 rows affected (0.01 sec)
附1:
命令解析
1 CREATE USER: 这是 SQL 中用于创建新用户的命令。
2 'root'@'%': 这里指定了要创建的用户名和用户可以从哪些主机连接到 MySQL 服务器。'root' 是用户名,而 '%' 是一个通配符,表示该用户可以从任何主机连接到 MySQL 服务器。如果你想要限制用户只能从特定的主机连接,可以将 '%' 替换为具体的 IP 地址或主机名。
3 IDENTIFIED WITH mysql_native_password: 这部分指定了用户的认证插件。mysql_native_password 是 MySQL 的一个认证插件,它使用传统的加密方法来存储密码。在某些 MySQL 版本或配置中,默认的认证插件可能不是 mysql_native_password,而是 caching_sha2_password 或其他插件。如果你需要使用与某些旧客户端兼容的认证方法,或者出于安全考虑选择特定的认证插件,你可以在这里指定。
4 BY '123456': 这部分指定了用户的密码。在这个例子中,密码被设置为 123456。请注意,使用简单或容易猜测的密码是不安全的。在实际应用中,你应该使用强密码,并遵循最佳的安全实践来保护你的数据库。
附2:
创建用户后,你可能还需要授予该用户适当的权限,以便他们能够执行特定的数据库操作。这可以通过 GRANT 语句来完成。例如:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
这条语句会授予 'root'@'%' 用户对所有数据库和所有表的全部权限,并允许该用户将这些权限授予其他用户。然而,在实际应用中,你应该根据最小权限原则来授予用户权限,以降低安全风险
浙公网安备 33010602011771号