因为需要在Windows下安装MySQL8的数据库,做一个临时数据库环境。
使用社区版本,下载地址如下:
https://dev.mysql.com/downloads/mysql/
使用8.0.16版本,需要在归档中查找
选择版本:
下载mysql-8.0.16-winx64.zip 即可
mysql-8.0.16-winx64.zip解压后就是MySQL的应用目录,不需要install操作,直接配置环境变量即可。
解压后,将目录软件目录放在 D:\Program Files\mysql-8.0.16-winx64
在用户环境变量中设置:
在系统环境变量path中增加mysql的bin路径
注意:必须以管理员运行
快捷键打开,先win+r 输入cmd,将下一步点击Enter 换为Ctrl+Shift+Enter,直接以管理员打开cmd窗口。
mysqld --initialize-insecure --user=mysql
结果:
Service successfully installed.
执行:
mysqld -install
执行:
net start MySQL
结果如下:
MySQL 服务正在启动 …
MySQL 服务已经启动成功。
登录mysql,因为之前没设置密码,所以密码为空,不用输入密码,直接回车即可 。
C:\Windows\system32>mysql -uroot -p
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 23
Server version: 8.0.16 MySQL Community Server - GPL
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
修改密码:
alter user 'root'@'localhost' identified with mysql_native_password by 'mysql123456';
flush privileges;
快捷键打开,先win+r 输入services.msc,打开服务控制台,手工重启MySQL服务。再重新访问数据库。
Python访问MySQL数据库,提示:
pymysql.err.OperationalError: (1370, "execute command denied to user ‘root’@‘%’ for routine
原因:非MySQL本地用户访问,没有访问权限。
解决方法如下:
create user 'root'@'%' identified with mysql_native_password by 'mysql123456';
grant all privileges on *.* to 'root'@'%' ;
flush privileges;