1. 开放端口
vi /etc/sysconfig/iptables
如果有这两条 注释掉
#-A INPUT -s 127.0.0.1/32 -p tcp -m tcp --dport 3306 -j ACCEPT
#-A INPUT -p tcp -m tcp --dport 3306 -j DROP
添加:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
重启网卡
service iptables restart
2. 创建用户
insert into mysql.user ( host, user, password, select_priv,insert_priv,update_priv, delete_priv,create_priv, drop_priv, reload_priv, shutdown_priv,process_priv,file_priv, grant_priv, references_priv, index_priv, alter_priv, show_db_priv, super_priv, create_tmp_table_priv, lock_tables_priv,execute_priv, repl_slave_priv, repl_client_priv, create_view_priv, show_view_priv, create_routine_priv, alter_routine_priv, create_user_priv, event_priv, trigger_priv ) values ( '%', 'demo', PASSWORD('demo'), 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y' );
如果用户插入失败报错 ( ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value)
修改 mysql 配置文件( /usr/local/mysql/my.cnf )
将:
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
修改为
sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
重启 Mysql
service mysql restart
再执行一次 创建用户
3. 给上面创建到用户赋值权限
用 cmd 端口登录 root 账号 给demo用户 赋予权限
// 赋予任何主机访问数据的权限
GRANT ALL PRIVILEGES ON *.* TO 'demo'@'%' WITH GRANT OPTION;
// 使修改生效
FLUSH PRIVILEGES;
// 退出myql
exit;
4. 使用第三方工具就能连接上了
::如果是Windows 只需把用户的 host 字段 改成 %就可以