sqlyog远程连接linux数据库
首先查看linux数据库的ip (linux能联网)
ifconfig
其次进行mysql的配置
启动MySQL服务
/etc/init.d/mysqld start
登录mysql
mysql -u root
如果之前mysql设置过密码请用这个
mysql -u root -p 然后输入密码
进入mysql之后:
#显示端口号:
show variables like '%port%';
#切换数据库:
use mysql;
#设置密码:root用户
update user set password=password("123456") where user='root';
#开放远程登录权限(远程连接)
grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
#同步修改内容
flush privileges;
#退出mysql:
exit
查看mysql服务运行状态
service mysqld status
连接失败原因:
- 防火墙拦截,解决方案:停用
service iptables stop (功能描述:临时关闭防火墙)
service iptables restart (功能描述:重启防火墙)
chkconfig iptables off (功能描述:关闭防火墙开机启动)
chkconfig iptables on (功能描述:开启防火墙开机启动)
- Mysql服务没有启动:
/etc/init.d/mysqld start
- 未联网
主机上ping一下linux看看是否能通
4.我纠结最长时间的问题emm
mysql root用户密码设置为字母才可以通,密码是数字1045报错。
感觉是加密方式引起的毛病。
linux上打开mysql重设密码:(设置成字母)
update user set password=password("root") where user='root';
5.如果用的是虚拟机的话,网络配置要设置为NAT模式,不能是桥接
原因:桥接是直接利用主机的网络,当sqlyog连接mysql时候,会使用主机的mysql,虚拟的的mysql不会被调用。(也有说是主机和虚拟机的mysql都是用3306端口,这样端口争端。有心思的可以试试主机和虚拟机配置不通端口试试,验证下真正原因)
最后贴一张sqlyog连接配置的图: