解決mysql數據庫創建用戶報錯Field 'ssl_cipher' doesn't have a default value


創建用戶報錯Field 'ssl_cipher' doesn't have a default value   

因為當時使用了這條語句直接插入用戶表  insert into user (Host,user,authentication) values('%','zc','123');   

提示ssl_cipher沒有默認值,可是又不知道ssl_cipher是個什么字段,怎么辦呢???

 

解決方法:

1.版本更新后改變了插入用戶表的語句, 應該用這個

create user 'zc'@'%' identified by '123';   //用戶名為zc ,'%'表示所有ip都可訪問,'123'為密碼

2.再賦予權限

grant usage on *.* to 'zc'@'%' with grant option;

grant select,insert,update,delete,create,drop on *.* to 'zc'@'%' with grant option;        //給了zc賬號 所有數據庫中所有表的增刪查改和建表刪表的權限

flush privileges;    //釋放 

 

這是創建用戶后沒賦予權限出現的報錯:

mysql> select * from user \G;
ERROR 1142 (42000): SELECT command denied to user 'zc'@'localhost' for table 'user'
ERROR:

賦予權限之后就可以select了,賦權語句后面需要加上 with grant option 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM