mysql - 在mysql中创建DB和授予语法错误

标签 mysql syntax sql-grant mysql-8.0

enter image description here我是Python初学者,英语不太好。

我的笔记本电脑 Windows 10 Pro,Python 版本 3.6 mysql 社区服务器版本 8.0.12

问题

首先Python

这是代码

mysql -u root -p
mysql>create database vsearchlogDB;
mysql>grant all on vsearchlogDB.* to 'vsearch' identified by 'vsearchpasswd';

错误 1064 (42000):您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在第 1 行“ide​​ntified by 'vsearchpasswd'”附近使用的正确语法

最佳答案

应该授予所有权限,而不仅仅是所有用户名还应该具有主机指针,如`vserach'@'%'

grant all privileges on vsearchlogDB.* to 'vsearch'@'%' identified by 'vsearchpasswd';

更像是这样

编辑:我是盲目的,完全忽略了“8.0”部分。在 8.0 上,这应该看起来像:

create user 'vsearch'@'%' identified by 'vsearchpasswd';
grant all privileges on vsearchlogDB.* to 'vsearch'@'%'; //(Don't forget the ';')

关于mysql - 在mysql中创建DB和授予语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52587142/

相关文章:

python - SQLAlchemy group_concat 有序值

sql - 如何在mysql查询中获取一个变量中的多列

mysql - JavaFX + Spring + JDBC 可以吗?

javascript - `export { foo as default }` 是有效的 ES2015 吗?

sql - 如何在可移植 SQL 中包含特定于 PostgreSQL 的代码?

php - 警告 : mysqli_connect(): Unknown MySQL server host

database - Oracle 数据库角色 - 从没有模式标识符的跨模式表中选择

MySQL 授予用户权限错误

mysql - 有没有办法在 MySQL 中为每个数据库设置密码?

ruby-on-rails - print + each() block - 为什么加入不起作用?