我正在学习dev.mysql的教程,并且尝试为先前创建的每个帐户将默认值设置为所有分配的角色,因此我尝试使用此语句: https://dev.mysql.com/doc/refman/8.0/en/roles.html
SET DEFAULT ROLE ALL TO
'dev1'@'localhost',
'read_user1'@'localhost',
'read_user2'@'localhost',
'rw_user1'@'localhost';
但是由于这个错误,我无法执行此操作,因为“ @”在此服务器版本的此位置无效,期望为';'
我正在使用Workbench 8.0
答案 0 :(得分:1)
这是MySQL Workbench使用的MySQL语法中的错误。参见the code on Github。这里的相关规则是:
role:
roleIdentifierOrText (AT_SYMBOL textOrIdentifier)?
;
AT_SYMBOL
实际上应该是AT_SIGN_SYMBOL
。我会解决这个问题。