1:正常配置方法01
MySQL-uroot-p123456
123456 为 root 用户的密码
grant all PRIVILEGES on discuz.*to ted@'123.123.123.123'identified by'123456';
上面的语句表示将 discuz 数据库的所有权限授权给 ted 这个用户,允许 ted 用户在 123.123.123.123 这个 IP 进行远程登陆,并设置 ted 用户的密码为 123456
flush privileges;
让更改生效
1.1:正常配置方法02
mysql -u root -pvmware
mysql> use mysql;
mysql> update user set host = ‘%’ where user = ‘root’;
mysql> select host, user from user;
mysql>flush privileges;
1.2:正常配置方法03
例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。
mysql> GRANT ALL PRIVILEGES ON *.* TO'myuser'@'%'IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码
mysql> GRANT ALL PRIVILEGES ON *.* TO'myuser'@'192.168.1.3'IDENTIFIED BY 'mypassword’ WITH GRANT OPTION;
2:问题解决
发现配置问题
mysql> select user,password,host from user;
回显
+--------+-------------------------------------------+-----------------+
| user | password | host |
+--------+-------------------------------------------+-----------------+
| root | *7E3F81xxx41010CD0ExxxxxxA880BA595CDABF32 | localhost |
| myuser | *7E3F814xxx41010CD0xxxxxxx80BA595CDABF32 | 11x.5.xx.126 |
| myuser | *7E3F814Axxx010CD0ExxxxxxxCDABF32 | 118.19x.1x.236 |
| myuser | *7E3xxxA41010CD0xxxxxxxxxxxABF32 | 127.0.0.1 |
+--------+-------------------------------------------+-----------------+
4 rows in set (0.00 sec)
如果你的配置没问题的话 回显应该和我的类似
3:加速访问
当远程访问mysql时, mysql会解析域名, 所以会导致访问速度很慢, 会有2,3秒延时!
解决办法:
修改mysql安装目录下的my.ini,加上下面这个配置可解决此问题。在[mysqld]下加入:skip-name-resolve
保存退出后重启mysql服务。
4:修改通信端口
修改下面两个地方:
[client]
port=3306
[mysqld]
# The TCP/IP Port the MySQL Server will listen on
port=3306
如果提示修改不了可能需要把相关软件和服务先停掉,win7的可能要以管理员方式打开,修改后要重启服务才起作用。
5:my.ini 配置错误
检查下面设置
skip-networking
#开启该选项可以彻底关闭MySQL的TCP/IP连接方式,如果WEB服务器是以远程连接的方式访问MySQL数据库服务器则不要开启该选项!否则将无法正常连接!
skip-name-resolve #禁止MySQL对外部连接进行DNS解析
skip-grant-tables
#禁止MySQL对外部连接进行DNS解析,使用这一选项可以消除MySQL进行DNS解析的时间。但需要注意,如果开启该选项,则所有远程主机连接授权都要使用IP地址方式,否则MySQL将无法正常处理连接请求!注:如果用winform连接mysql,加入此句速度会有很大的提升
6:本地防火墙规则
检查防火墙是否有mysql 通讯端口规则;如果不是系统防火墙可能是您的地3方软件在进行拦截!云锁 安全狗一类的
7:IDC 运营商的封锁
使用namp 探测(不是特别准确);但有一定的参考价值
C:\Users\Administrator>nmap -sS kk11.xxx.888ywf.com -p3306
Starting Nmap 7.12 ( https://nmap.org ) at 2016-07-12 15:45 ?D1ú±ê×?ê±??
mass_dns: warning: Unable to determine any DNS servers. Reverse DNS is disabled. Try using --system-dns or specify valid servers with --dns-servers
Nmap scan report for kk11.xxxx.888ywf.com (118.xx3.1xx.236)
Host is up (0.057s latency).
PORT STATE SERVICE
3306/tcp filtered mysql #被墙状态,过滤
Nmap done: 1 IP address (1 host up) scanned in 1.60 seconds
C:\Users\Administrator>nmap -sS kk11.xxxx.888ywf.com -p3309
Starting Nmap 7.12 ( https://nmap.org ) at 2016-07-12 16:43 ?D1ú±ê×?ê±??
mass_dns: warning: Unable to determine any DNS servers. Reverse DNS is disabled. Try using --system-dns or specify valid servers with --dns-servers
Nmap scan report for kk11.xxxxx.888ywf.com (1xx8.1xx.1x9.236)
Host is up (0.051s latency).
PORT STATE SERVICE
3309/tcp open unknown #开放状态
Nmap done: 1 IP address (1 host up) scanned in 1.32 seconds
本地查看状态可以使用
netstat -nat #查看端口开放情况
C:\Users\Administrator>netstat -nat
活动连接
协议 本地地址 外部地址 状态 卸载状态
TCP 0.0.0.0:21 0.0.0.0:0 LISTENING InHost
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING InHost
当然使用Tcpview 是更好的选择;
如果IDC 封了端口,可以使用第4点来修改通讯端口
待续.....