关于mysql数据库远程访问

mysql数据库安装默认为只能本地访问,若需远程连接需根据不同的操作系统做一些操作

Windows:

新装的mysql本地无法登录,显示为1045错误

mysql#1045(1045Access denied for user ‘root‘@‘localhost‘ (using password:YES)

解决方法:修改mysql数据库配置文件my.ini,在 [mysqld] 这个下面添加一行  skip-grant-tables

本地可成功访问mysql数据库,但远程访问不了

在本机上修改用户权限,默认的是localhost换成%

mysql数据库user表中直接将localhost改为“%”,

UPDATE USER SET HOST=‘%‘  WHERE USER=‘admin‘;

或者添加一行host为“%”,设置密码为要访问数据库密码一致

UPDATE USER SET PASSWORD=PASSWORD(‘baihong159753‘) WHERE HOST=‘%‘ AND

USER=‘admin‘;

若仍然无法远程访问,则必须修改mysql数据库配置文件my.ini

在 [mysqld] 这个下面添加一行  skip-name-resolve  意思是:忽略主机名的访问方式

lower_case_table_names=1,意思是:忽略数据库中的大小写,这行可加可不加

Ubuntu:

Step 1:

vim /etc/mysql/my.cnf找到bind-address = 127.0.0.1

注释掉这行,如:#bind-address = 127.0.0.1

或者改为: bind-address = 0.0.0.0允许任意IP访问;或者自己指定一个IP地址。

重启 MySQL:sudo /etc/init.d/mysql restart

Step 2:

mysql数据库user表中对应user的Host更改为%

CentOS:

mysql>use mysql;

mysql>update user set Host=‘%‘ where Host=‘localhost‘;

mysql>flush privileges;   # 重载系统权限

允许3306端口

  1. iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
  2. /etc/init.d/iptables save
  3. iptables -L -n # 或者: service iptables status
时间: 2024-10-27 10:58:48

关于mysql数据库远程访问的相关文章

mysql 数据库远程访问设置方法

摘自: http://www.iteye.com/topic/418151 mysql数据库远程访问设置方法 1.修改localhost更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改成"%" mysql>use mysql; mysql>update user set host = '%' where user = 'root'; mysql

MySQL数据库远程访问权限如何打开(两种方法)

MySQL数据库远程访问权限如何打开(两种方法) 下载GPL版本安装 MySQL Community Edition(GPL) Community (GPL) Downloads 在我们使用mysql数据库时,有时我们的程序与数据库不在同一机器上,这时我们需要远程访问数据库.缺省状态下,mysql的用户没有远程访问的权限. 下面介绍两种方法,解决这一问题. 1.改表法 可能是你的帐号不允许从远程登陆,只能在localhost.这个时候只要在localhost的那台电脑,登入mysql后,更改 "

打开MySQL数据库远程访问的权限

在我们使用mysql数据库时,有时我们的程序与数据库不在同一机器上,这时我们需要远程访问数据库.缺省状态下,mysql的用户没有远程访问的权限.下面介绍两种方法,解决这一问题. 1.改表法 可能是你的帐号不允许从远程登陆,只能在localhost.这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%&q

打开MySQL数据库远程访问的权限【转】

在我们使用mysql数据库时,有时我们的程序与数据库不在同一机器上,这时我们需要远程访问数据库.缺省状态下,mysql的用户没有远程访问的权限.下面介绍两种方法,解决这一问题. 1.改表法 可能是你的帐号不允许从远程登陆,只能在localhost.这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%&q

MySQL数据库设置远程访问权限方法小结

http://www.jb51.net/article/42441.htm MySQL基础知识第一期,如何远程访问MySQL数据库设置权限方法总结,讨论访问单个数据库,全部数据库,指定用户访问,设置访问密码,指定访问主机. 1,设置访问单个数据库权限 复制代码代码如下: mysql>grant all privileges on test.* to 'root'@'%'; 说明:设置用户名为root,密码为空,可访问数据库test 2,设置访问全部数据库权限 复制代码代码如下: mysql>g

MySQL数据库不能远程访问的解决办法

MySQL数据库不允许从远程访问怎么办? 下面提供两种方法: 1.改表法 MySQL的帐号不允许从远程登陆,只能在localhost.这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"即可. #mysql -u root -ppwd //MySQL的root密码 #mysql>use

wamp集成环境下mysql数据库的分开部署和远程访问

今天折腾了一天一个小问题,就是明明正确的php代码在访问数据库的时候总是提示DB ERROR.后来才发现是填写数据库名的时候,写成了该数据库的ip地址(其实也是本机ip但是本机还是不能访问),而不是localhost. 归根到底这个问题的根源是mysql未开启远程访问,开启的具体方法为: D:\wamp\Apache2\conf\alias\phpmyadmin.conf 找到 deny from all allow from all 这两行删除改为 allow from all 另外,mysq

Linux下开启mysql数据库的远程访问权限

摘要:今天在Linux服务器上安装了msyql数据库,在本地访问的时候可以访问,但是我想通过远程的方式访问的时候就不能访问了,查询资料后发现,Linux下MySQL默认安装完成后只有本地访问的权限,没有远程访问的权限,需要你给指定用户设置访问权限才能远程访问该数据库,下面把我的做法记录一下: 一:登录安装后的mysql数据库,如下图: 二:输入给root用户设置权限的命令行并回车,如下图: 这里的root代表root用户,最后的root代表root用户的密码,我这里用户名,密码都是root,中间

Mysql添加远程访问数据库权限

@font-face {  font-family: "宋体";}@font-face {  font-family: "Cambria Math";}@font-face {  font-family: "@宋体";}@font-face {  font-family: "Calibri";}@font-face {  font-family: "Helvetica Neue";}p.MsoNormal,