mysql: unknown option '-a',ERROR 1364 (HY000): Field 'ssl_cipher' doesn't h...

搜索热词

感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编两巴掌来看看吧!

我的MysqL版本为5.6.14版本,是二进制包安装的(虽然是二进制包安装的,但是以下问题同样适用于源码安装包安装的MysqL)

今天在我的测试库上添加一个新用户,报错:

[MysqL@ydrh2 ~]$ MysqL -uroot -p123456

Warning: Using a password on the command line interface can be insecure.

Welcome to the MysqL monitor. Commands end with ; or \g.

Your MysqL connection id is 1

Server version: 5.6.14-enterprise-commercial-advanced MysqL Enterprise Server - Advanced Edition (Commercial)

Copyright (c) 2000,2013,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> insert into user(host,user,password) values("localhost","peter1",password("123456"));

ERROR 1046 (3D000): No database selected

MysqL> use MysqL;

Reading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -A

Database changed

MysqL> insert into user(host,password("123456"));

ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value

原因:在我的配置文件my.cnf中有这样一条语句

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

指定了严格模式,为了安全,严格模式禁止通过insert 这种形式直接修改MysqL库中的user表进行添加新用户

解决办法:

将配置文件中的STRICT_TRANS_TABLES删掉,即改为:

sql_mode=NO_ENGINE_SUBSTITUTION

然后重启MysqL即可

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值