MySQL设置远程连接

基本思路就是为mysql.user表增加一条记录:'Hadoop'@'%',这样,任何主机上的用户'hadoop'都可以远程连接MySQL数据库。于是输入下面的命令:

mysql> INSERT INTO mysql.user(Host,User,Password) VALUES('%','hadoop','1');

结果出现了错误:

1364 - Field 'ssl_cipher' doesn't have a default value

这是因为指定了严格模式,不能直接往mysql.user表里面insert用户:

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

只能输入下面两个命令来实现:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'hadoop'@'%' IDENTIFIED BY '1' WITH GRANT OPTION;

mysql> FLUSH PRIVILEGES;

这样,任何主机上的用户'hadoop'都可以凭借密码'1'远程连接MySQL数据库。

相关推荐