对方服务器有问题,或者是对方的防火墙、权限设置有问题,无论任何工具能链接对方的MYSQL服务器,那么用DOS下的mysql.exe就一定能够链接,命令格式如下:
mysql.exe -h 对方主机IP地址 -u 给你分配的用户名称 -p
‘贰’ mysql 远程连接数据库的方法集合
1、改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改
"mysql"
数据库里的
"user"
表里的
"host"
项,从"localhost"改称"%"
复制代码
代码如下:
mysql
-u
root
-pvmwaremysql>use
mysql;
mysql>update
user
set
host
=
'%'
where
user
=
'root';
mysql>select
host,
user
from
user;
2、授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。
GRANT
ALL
PRIVILEGES
ON
*.*
TO
'myuser'@'%'IDENTIFIED
BY
'mypassword'
WITH
GRANT
OPTION;
如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码
GRANT
ALL
PRIVILEGES
ON
*.*
TO
'myuser'@'192.168.1.3'IDENTIFIED
BY
'mypassword'
WITH
GRANT
OPTION;
我用的第一个方法,刚开始发现不行,在网上查了一下,少执行一个语句
mysql>FLUSH
RIVILEGES
使修改生效,就可以了
3、另外一种方法:
在安装mysql的机器上运行:
1、d:\mysql\bin\>mysql
-h
localhost
-u
root
//这样应该可以进入MySQL服务器
2、mysql>GRANT
ALL
PRIVILEGES
ON
*.*
TO
'root'@'%'WITH
GRANT
OPTION
//赋予任何主机访问数据的权限
3、mysql>FLUSH
PRIVILEGES
//修改生效
4、mysql>EXIT
//退出MySQL服务器
这样就可以在其它任何的主机上以root身份登录啦。
如果经过上面的操作,还不能解决问题,那可能就是服务器的安全设置问题,是不是ip安全策略或防火墙没有开启3306的例外。
‘叁’ 如何连接远程Mysql数据库
一、连接远程数据库:
1、显示密码
如:MySQL
连接远程数据库(192.168.5.116),端口“3306”,用户名为“root”,密码“123456”
C:/>mysql -h
192.168.5.116 -P 3306 -u root -p123456
2、隐藏密码
如:MySQL 连接本地数据库,用户名为“root”,
C:/>mysql -h
localhost -u root -p
Enter password:
二、配置mysql允许远程链接
默认情况下,mysql帐号不允许从远程登陆,只能在localhost登录。本文提供了二种方法设置mysql可以通过远程主机进行连接。
一、改表法
在localhost登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host"
项,将"localhost"改称"%"
例如:
#mysql -u root
-p
Enter password:
……
mysql>
mysql>update user
set host = '%' where user = 'root';
mysql>select host,
user from user;
二、授权法
例如:
你想myuser使用mypassword(密码)从任何主机连接到mysql服务器的话。
mysql>GRANT ALL
PRIVILEGES ON *.* TO 'myuser'@'%'IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码
mysql>GRANT ALL
PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3'IDENTIFIED BY
'mypassword' WITH GRANT OPTION;
mysql>FLUSH
PRIVILEGES
使修改生效,就可以了
常见问题:
1、在采用法二授权法之后,无法在本地登录mysql(如:#mysql -u root -p -h
192.168.5.116
Enter password:
ERROR 1045 (28000): Access denied for user
'root'@'loadb116' (using password: YES)
上例中loadb116是主机名.
解决方法:
1、这时可以使用:mysql -u
root -p 登录,进入到mysql后。
mysql> grant all privileges on *.* to 'root'@'loadb116'
identified by '123456' with grant option;
Query OK, 0 rows affected
(0.00 sec)
mysql> flush
privileges;
Query OK, 0 rows affected (0.00
sec)
2、在本地使用ip地址登录
#
mysql -u root -p -h
192.168.5.116
Enter password:
Welcome to the MySQL
monitor. Commands end with ; or /g.
Your MySQL connection id is 60
Server
version: 5.1.45 MySQL Community Server (GPL)
Type 'help;' or '/h' for
help. Type '/c' to clear the buffer.
mysql>
‘肆’ 如何把mysql数据库上传到远程服务器上(即网站)
1)、数据不多的情况下,可以直接用数据库连接工具,上面有数据库拷贝到数据库的功能来拷贝。
2)、数据量大的情况下,建议用下面的方式:
1、远程服务上面安装mysql服务器
2、本地的数据库的数据导出到一个文件中
3、ftp或者其他方式,把这个数据库文件传到远程服务器
4、用远程服务中source命令,导入
‘伍’ 怎样把本机的mysql数据库上传到远程主机上
方法1:
先将本地的数据备份出来(都是直接在cmd或shell命令窗口下执行):
mysqlmp -u用户名 -p密码 --default-character-set=UTF8 库名 > 备份文件存放路径\文件名.sql
示例(假如将库test备份导出):
mysqlmp -uroot -p123456 --default-character-set=UTF8 test >d:\test_db.sql
将文件上传到服务器,然后导入:
mysql -uroot -p123456 --default-character-set=UTF8 test >d:\test_db.sql
方法2:
此方法主要利用一些第三方GUI工具处理,如:SQL yog Enterprise
用图形化登陆本地的库,登陆后,选对应的库,然后右键选"backup database as SQL mp"即可备份.
然后断开图形客户端的连接,改用该客户端连接到远程主机,登陆后,选数据库那部分,然后右键选"restore from SQL mp"即可恢复.
‘陆’ 怎样将本地MySql数据库传到远程服务器上 详细
首先备份好你本地的数据库,方法如下。 1、用APMServ5.2.6(网站上面有下载)带的phpmyadmin 进行备份恢复。 A、运行APMServ5.2.6, 点击右边的“管理MySql 数据库”。服务器填写127.0.0.1:3306, 登入名称:root,密码为空进行登录。在左边是数据库列表。点击你的数据库。点导出、拉到 最下面把“另存为文件”打勾。点执行。这样你就可以备份你的数据库了。 2、运行mySQL-Front 备份恢复你的数据库。 A、新建一个登录。 信息栏中随便写一下名字。标识你的登录信息。 B、点击连接栏,分别填好: 服务器:服务器的IP 端 口:一般为3306 C、点击注册栏,分别填好: 用 户:你申请的数据库的用户名(如果是本地一般为root), 密 码:数据库的密码(本地为空) 数据库:你申请的数据库名。 填写好这些信息后点击“确定”这样就能链接到你的远程数据库了。左边这个远程数据。 服务器的一些数据库,点击你的数据库后等待链接。直至返回所有数据,你便能打开你的数据库。 中的数据表了。在这里你可以修改你的数据表结构,删除填加数据等(小心操作)。 D、右键点击你的数据库进行备份(输出)数据,有几种备份的类型,一般选sql。
‘柒’ 用MysQL怎么进行远程连接数据库
1、首先在电脑端登陆数据服务器进行操作,如图所示。