您的位置:首页 > 运维架构 > Linux

Linux MySql 远程登录 远程访问

2015-09-08 11:50 489 查看
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 字段 改成 %就可以
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息