mysql官网下载windows安装包

mysql官网下载windows安装包

 

 

下载地址:https://dev.mysql.com/downloads/mysql/

 

 

2. 安装mysql

 

 

1. 配置环境变量

 

 

变量名:MYSQL_HOME 路径:D:\mysql\mysql-8.0.25-winx64

 

 

2. 生成data文件

 

 

以管理员身份运行CMD进入mysql安装目录bin目录下,执行:mysqld --initialize-insecure --user=mysql 在C:\software\mysql-8.0.19-winx64.zip\mysql-8.0.19-winx64下和bin同级目录生成data目录(执行报错请执行第3步安装Visual C++安装后需重启主机生效)

 

 

3. 安装mysql

 

 

继续执行命令:mysqld –install

 

 

4. 启动服务

 

 

启动服务:net start mysql

 

 

停止服务:net stop mysql

 

 

若输入net start mysql 提示不是内部命令或外部命令,也不是可运行的程序;则需要:在“系统变量”(用户变量)里找到path,编辑,将 “%SystemRoot%\system32”添加进去即可解决;

 

 

5. 登录MySQL

 

 

登录mysql: mysql -u root -p

 

 

(因为之前没设置密码,所以密码为空,不用输入密码,直接回车即可)

 

 

6. 密码管理

 

 

查询用户密码命令: select host,user,authentication_string from mysql.user;

 

 

设置或修改用户密码:

 

 

方法1:update mysql.user set authentication_string=("123456") where user="root";

 

 

方法2:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

 

 

执行完毕后需执行:flush privileges; 保存修改

 

 

7. 退出:exit

 

 

8. 再次以新密码登录

 

 

mysql -u root –p 输入密码:123456

 

 

3. 安装时提示报错则需安装Visual C++

 

 

下载地址:https://dev.mysql.com/downloads/file/?id=504762

 

 

4. 关于重装mysql

 

 

1. 打开cmd,切换到mysql的bin目录下,输入命令:net stop mysql,停止mysql服务;

 

 

2. 打开mysql的安装目录,找到data文件夹,将其删除!

 

 

3. 回到cmd命令窗口,输入mysqld -remove

 

 

4. 按照安装步骤安装即可

 

 

5. 创建数据库

 

 

使用 MySQL 命令行工具创建一个测试数据库,命名为 My_db,指定其默认字符集为 utf8,输入:

 

 

CREATE DATABASE IF NOT EXISTS My_db

 

 

DEFAULT CHARACTER SET utf8;

 

 

查看数据库My_db 信息:SHOW CREATE DATABASE My_db;

 

 

6. mysql用户管理

 

 

1. 创建新用户gz12345

 

 

CREATE USER 'username'@'host' IDENTIFIED BY 'password';

 

 

说明:username - 你将创建的用户名, host - 指定该用户在哪个主机上可以登录,如果是本地用户可用localhost, 如果想让该用户可以从任意远程主机登陆,可以使用通配符%. password - 该用户的登录密码,密码可以为空,如果为空则该用户可以不需要密码登录服务器.

 

 

2. 删除用户

 

 

DROP USER 'username'@'host';

 

 

7. mysql授权管理

 

 

1. 新增授权

 

 

GRANT privileges ON databasename.tablename TO 'username'@'host';

 

 

说明:privileges:用户的操作权限,如SELECT,INSERT,UPDATE等,如果要授予所的权限则使用ALL
databasename:数据库名
tablename:表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示,如*.*

 

 

举例:

 

 

给用户gz12345授权数据库My_db查询和新增数据权限,可以在所有ip连接数据库

 

 

GRANT SELECT, INSERT ON My_db TO 'gz12345'@'%';

 

 

给用户gz12345授予本机所有数据库权限
GRANT ALL ON *.* TO 'gz12345'@'%';

 

 

给用户gz12345授予本机My_db数据库权限
GRANT ALL ON My_db.* TO 'gz12345'@'%';

 

 

2. 撤销授权

 

 

REVOKE privilege ON databasename.tablename FROM 'username'@'host';

 

 

说明:privileges:用户的操作权限,如SELECT,INSERT,UPDATE等,如果要授予所的权限则使用ALL
databasename:数据库名
tablename:表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示,如*.*

 

 

3.刷新权限:

 

 

FLUSH PRIVILEGES;

 

 

注意:
用以上命令授权的用户不能给其它用户授权,如果想让该用户可以授权,用以下命令:
GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;

 

 

3. 关于授权的常见错误

 

 

1.授权时报错:You are not allowed to create a user with GRANT;

 

 

解决方法:root用户下执行user mysql;

 

 

再执行update user set host='%' where user=username;修改后再次授权若还报错重复执行第二次即可成功。

 

 

2. 连接Navicat报错

 

 

解决方法:这是因为mysql8的加密方式和Navicat不一样,修改加密方式:

 

 

alter user username identified with mysql_native_password by 'gz12345';

posted @ 2022-04-12 21:07  姚春辉  阅读(757)  评论(0编辑  收藏  举报