Linux MySql 远程登录 远程访问

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 字段 改成 %就可以

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值