文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

MySQL5.6添加root用户报错:Field 'ssl_cipher' doesn't have a default value怎么解决

2024-04-02 19:55

关注

这篇文章主要讲解了“MySQL5.6添加root用户报错:Field 'ssl_cipher' doesn't have a default value怎么解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQL5.6添加root用户报错:Field 'ssl_cipher' doesn't have a default value怎么解决”吧!

2012.14.15
MySQL: 5.6.19
 刚刚忙完了零售测试环境的部署,现在处理上周遗留的问题。
由于user 表中确实localhost和127.0.0.1条目信息:

  1. mysql> select Host,User,Password from user where User=\'root\';

  2. +--------------+------+-------------------------------------------+

  3. | Host         | User | Password                                  |

  4. +--------------+------+-------------------------------------------+

  5. | bidevedw\\_db| root | *D013A4E3A5BB01E4239D18D7E93B59B7D2B767AD |

  6. | ::1          | root | *D013A4E3A5BB01E4239D18D7E93B59B7D2B767AD |


  7. | %            | root | *D013A4E3A5BB01E4239D18D7E93B59B7D2B767AD |

  8. +--------------+------+-------------------------------------------+-

这样导致我在服务器本地登录的时候,解析的是以root@'%' 方式登录,然而这种方式登录的root是没有grant 权限,这使得不能给其他用户授权。

  1. *************************** 4. row ***************************

  2.                   Host: %

  3.                   User: root

  4.               Password: *D013A4E3A5BB01E4239D18D7E93B59B7D2B767AD

  5.            Select_priv: Y

  6.            Insert_priv: Y

  7.            Update_priv: Y

  8.            Delete_priv: Y

  9.            Create_priv: Y

  10.              Drop_priv: Y

  11.            Reload_priv: Y

  12.          Shutdown_priv: Y

  13.           Process_priv: Y

  14.              File_priv: Y

  15.             Grant_priv: N

  16.        References_priv: Y

  17.             Index_priv: Y

  18.             Alter_priv: Y

  19.           Show_db_priv: Y

  20.             Super_priv: Y

  21.  Create_tmp_table_priv: Y

  22.       Lock_tables_priv: Y

  23.           Execute_priv: Y

  24.        Repl_slave_priv: Y

  25.       Repl_client_priv: Y

  26.       Create_view_priv: Y

  27.         Show_view_priv: Y

  28.    Create_routine_priv: Y

  29.     Alter_routine_priv: Y

  30.       Create_user_priv: Y

  31.             Event_priv: Y

  32.           Trigger_priv: Y

  33. Create_tablespace_priv: Y

  34.               ssl_type:

  35.             ssl_cipher:

  36.            x509_issuer:

  37.           x509_subject:

  38.          max_questions: 0

  39.            max_updates: 0

  40.        max_connections: 0

  41.   max_user_connections: 0

  42.                 plugin: mysql_native_password

  43.  authentication_string:

  44.       password_expired: N

解决思路分析
        把缺失的条目添加到user表中。
由于我也是这半年才真正的接触MySQL。所以很多也是问度娘,我也以为像user表中添加记录是使用INSERT into。但是这种方法会报错:
ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value
这是因为user表中有几个列是非空,而它的默认值是null .
| ssl_cipher                 | blob                              | NO   |     | NULL    |       |
| x509_issuer              | blob                              | NO   |     | NULL    |       |
| x509_subject           | blob                              | NO   |     | NULL    |       |

所以一般的insert into 都是给出前三列。而忽视了其他列。这种方式好像是在5.1之前可以使用的。我的是5.6。这种方式就行不通

解决方法:
GRANT USAGE ON *.* TO 'root'@'localhost' IDENTIFIED BY '123456' WITH GRANT OPTION;
GRANT USAGE ON *.* TO 'root'@'l127.0.0.1' IDENTIFIED BY '123456' WITH GRANT OPTION;

记得要刷新一下:flush privileges;
重新登录mysql -uroot -p123456
查看当前登录用户和登录的方式:
mysql> select user();
+----------------+
 | user()           |
+----------------+
 | root@localhost |
+----------------+
1 row in set (0.00 sec)
这样就可以不走@'%'
还可以修改root @'%'方式的权限:

mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "123456" WITH GRANT OPTION;
Query OK, 0 rows affected (0.02 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.03 sec)
你权限的时候会显示:Grant_priv: Y
这样root用户以@'%'方式就可以做grant操作

感谢各位的阅读,以上就是“MySQL5.6添加root用户报错:Field 'ssl_cipher' doesn't have a default value怎么解决”的内容了,经过本文的学习后,相信大家对MySQL5.6添加root用户报错:Field 'ssl_cipher' doesn't have a default value怎么解决这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯