本次主机为window10,虚拟机为ubuntu14.04.
第一步 配置详解
1)安装mysql sudo su 输入密码,切换root账号
apt-get install mysql-sever
apt-get install mysql-client
apt-get install libmysqlclient-dev
安装过程中设置密码等,安装完 netstat -an | grep "mysql"
安装成功
2)登录mysql 数据库为账户附权限
mysql -u 账户 -p 输入密码
mysql>GRANT ALL PRIVILEGES ON *.* TO '账户'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION; %任意主机
flush privileges;重载授权
show grants for 账户 ; 查看
exit
3)配置防火墙
iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCRPT
主要是为开放端口 ,关闭也是可以,但是ubuntu没有关闭方法。 暂时开放所有端口命令
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables-save 保存配置
iptables -L 查看策略
modprobe ip_tables 重启
二 window 远程登录问题及解决办法
首先在主机cmd里登录 mysql -h ip -u 账户 -p 输入密码后 出现问题
ERROR 2003 (。。。):Can't connect to MySQL server on ******
一脸懵逼,登录虚拟机mysql查看下,又出现:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock
额。。。,所以重启吧。/etc/init.d/mysql restart failed...... 于是,查看日志 cat /etc/var/log/mysql/error.log
对症下药——这是说mysql进程问题,都杀掉:
Ps -aux | grep “mysql”
Kill number number 进程号。
重启成功。
第二个问题:Mysql 的通信说是 /var/run/mysql/mysqld.sock 文件出现问题。
查找了一下,居然没有。之前朋友安装mysql出现问题,重装mysql,按本文上述装配是没有问题的。
配置/etc/mysql/my.cnf
[client],[mysql] 确保socket 路径正确
注意:
Mysql的默认配置文件my.cnf(中的bind-address默认为127.0.0.1,所以就算你创建了可以 remote访问的用户,你也不能使用mysql -h命令进行访问,若访问就会出现上出问题,因为此时Mysql只接受localhost,所以需要把bind-address屏蔽掉。
到此成功,希望对大家有帮助