mysql可以使用客户端工具mysqlfront,sqlyog等连接
也可以命令行登陆
首先 mysqlexe 目录要加到环境变量,这一步可以在安装mysql的时候设置,
也可以后期指定,所在目录直接加到 path 即可
windows下 打开控制台 win+r 打开运行 输入cmd
输入命令 :
mysql -h要连接的ip -uroot -p密码 -P端口
端口默认为3306可以不输
例如用root连接本地的数据库
mysql -uroot -p123456
mysql -uroot -p123456 数据库名
linux 进入控制台 , 命令一样
例如我的密码是空,用root登陆
前置条件:
1、在阿里云服务器de系统是win service 2012。
2、服务器里自己安装了my sql 57
3、本地也安装了my sql 57
需求:想通过本地的mysql连接上远程的服务器的mysql,这样自己在本地 *** 作数据库比在服务器里数据库要好。
步骤:
一、增加允许远程连接 MySQL 用户 并授权。
在你安装路径下的bin文件夹里进行命令行的设置。
1、首先以 root 帐户登陆 MySQL
在服务器中打开命令行(shift+右键)
打开数据库管理员权限
mysql -uroot -p 123
我去,对应的是123是对应到数据库名。
果断改为
mysql -uroot -p
输入mysql的密码。
2、查看用户的权限
mysql> select host,user from user; (查看用户的权限情况)
3、创建远程登录用户并授权
进入到服务器的命令行里
输入
use mysql
在输入
grant all PRIVILEGES on discuz to ted@'123123123123' identified by '123456';
上面的语句表示将 discuz 数据库的所有权限授权给 ted 这个用户,允许 ted 用户在 123123123123 这个 IP 进行远程登陆,并设置 ted 用户的密码为 123456 。
注意:
(1)all PRIVILEGES 表示赋予所有的权限给指定用户,这里也可以替换为赋予某一具体的权限,例如:select,insert,update,delete,create,drop 等,具体权限间用“,”半角逗号分隔。
(2)discuz 表示上面的权限是针对于哪个表的,discuz 指的是数据库,后面的 表示对于所有的表,由此可以推理出:对于全部数据库的全部表授权为“”,对于某一数据库的全部表授权为“数据库名”,对于某一数据库的某一表授 权为“数据库名表名”。
(3)ted 表示你要给哪个用户授权,这个用户可以是存在的用户,也可以是不存在的用户。
(4)123123123123 表示允许远程连接的 IP 地址,如果想不限制链接的 IP 则设置为“%”即可。
(5)123456 为用户的密码。
我最终使用的是把整个数据库的权限都ok,全部数据库的全部表,给root用户授权。没有设定远程连接IP地址。
4、执行更新权限(刷新权限)
flush privileges;
5、再一次查看数据库用户权限
mysql> select host,user from user; (再次查看用户的权限情况)
二、打开服务器上的防火墙阻止 3306 端口,可以公网访问。
MySQL 默认的端口是 3306 ,需要确定防火墙没有阻止 3306 端口,否则远程是无法通过 3306 端口连接到 MySQL 的。
如果您在安装 MySQL 时指定了其他端口,请在防火墙中开启您指定的 MySQL 使用的端口号。
找到防火墙的允许的应用,打开数据库的公用和专用。
三、在本地建立服务器数据库连接
1、点击这个
2、数据里填上连接的名字,服务器IP,以及连接数据库的名字和密码
3、点击configure server mangement
如果报这个错误,说明是服务器的3306端口与没有打开。
下面图连接成功
选择SSH login。。。。
输入服务器的公网IP和端口(我也不知道是啥端口我写的是本地跑的项目的本地接口)
一路next就ok。
怎么连接服务器mysql数据库1,打开Navicat for MySQL,点击左上角“链接”按钮,如下图:
2,在d出的新建链接对话框中,填写远程数据库服务器IP地址,账号,密码等信息。如下图:
3,最后确定保存即可。假设:
本地计算机ip:1921681100
远程计算机ip:1921681244
解决方法:
1,远程计算机(ip:1921681244)执行如下:
开启服务器:/etc/initd/mysqlserver
start
登陆服务器:bin/mysql
-u
root
-p
使用服务器:mysql>
use
mysql
创建远程登陆用户并授权
:
mysql>
grant
all
PRIVILEGES
on
test
to
andy@'1921681100'
identified
by
'123456';
上面的语句表示将
test
数据库的所有权限授权给
andy
这个用户,允许
andy
用户在
1921681100这个
IP
进行远程登陆,并设置
andy
用户的密码为
123456
。
下面逐一分析所有的参数:
all
PRIVILEGES
表示赋予所有的权限给指定用户,这里也可以替换为赋予某一具体的权限,例如:select,insert,update,delete,create,drop
等,具体权限间用“,”半角逗号分隔。
test
表示上面的权限是针对于哪个表的,test
指的是数据库,后面的
表示对于所有的表,由此可以推理出:对于全部数据库的全部表授权为“”,对于某一数据库的全部表授权为“数据库名”,对于某一数据库的某一表授权为“数据库名表名”。
andy
表示你要给哪个用户授权,这个用户可以是存在的用户,也可以是不存在的用户。
1921681100
表示允许远程连接的
IP
地址,如果想不限制链接的
IP
则设置为“%”即可。
123456
为用户的密码。
执行了上面的语句后,再执行下面的语句,方可立即生效。
>
flush
privileges;
2,本地计算机(ip:1921681100):
执行如下:/mysql
-h
1921681244
-u
andy
-p
123456首先你要先和服务器的网络是能Ping通的
MYSQL连接一般需要输入目标服务器的IP地址,端口号,用户名和密码。
如:ip地址:19216811101
端口 :3306
用户名:root
密码:root
其中用户名和密码一般输入root都是可以进入的。不行就去目标服务器上的数据库管理下用户。
MYSQL一般都是用NAVITE for mysql。点击左上角的连接按钮。输入以上信息就可以了,记得先PING网络。一、改表法。
可能是你的帐号不允许从远程登陆,只能在localhost登录。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改把host更改为"%"
a bin/mysql -uroot -p密码
b use mysql----->show tables;------>select host, user from user;
c update user set host = '%' where user = 'root';
d flush privileges;windows下:
1
打开命令行窗口(cmd),如果安装的Mysql服务名为mysql,则net
start
mysql(此步也可直接在控制面板->管理->服务中启动Mysql)
2
输入命令进入到Mysql的安装目录中的bin目录内,如安装目录为c:\program
files\Mysql,则输入命令cd
c:\program
files\Mysql\bin;
3
使用命令启动mysql服务,如用户名为root密码为123456,则命令mysql
-u
root
-p
123456;如果登录成功,则说明mysql服务启动成功。
Linux下:
1
直接在命令行窗口中service
mysql
start(假设服务名称为mysql);
2
然后按windows下的第2和第3步进行同样验证;
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)