Linux下远程连接MySQL数据库的方法

踩坑笔记

估计搞了一个多小时才把这个远程连接搞好。一台本地电脑,一台云服务器,都是linux系统。

步骤

1、在服务器端开启远程访问

首先进入mysql数据库,然后输入下面两个命令:

grant all privileges on *.* to ‘root’@‘%’ identified by ‘password’;

flush privileges;

第一个*是数据库,可以改成允许访问的数据库名称

第二个 是数据库的表名称,代表允许访问任意的表

root代表远程登录使用的用户名,可以自定义

%代表允许任意ip登录,如果你想指定特定的IP,可以把%替换掉就可以了

password代表远程登录时使用的密码,可以自定义

flush privileges;这是让权限立即生效

2、修改my.cnf配置文件

这个是mysql的配置文件,如果你无标题文章找不到在哪里的话,可以输入find /* -name my.cnf找到

通过vim编辑该文件,找到bind-address = 127.0.0.1这一句,然后在前面加个#号注释掉,保存退出

3、重启服务

service mysql restart

4、在本地远程连接

在终端输入:

mysql -h 服务器ip地址 -P 3306 -u root -p

然后输入密码即可。

root是第1点设置的用户名,密码也是第1点设置的密码

一些细节

在网上找了很多文章,说要开启3306端口才能连接,但是我开启了却还是无法连接,后来又找到了一些文章,说要更改my.cnf,也就是上面的第2点,更改了然后重启服务器就可以了。

刚刚在另外一台服务器上面试了一下,没有配置过端口,通过上面三步,很快就连上了。

所以第二点非常重要,基本上每个人装mysql的时候都会去配置那个文件,因为字符集需要配置。所以肯定有那个文件的,用find命令找找就行了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

时间: 2017-06-04

今在服务器上 有mysql 数据库,远程访问,不想公布root账户,所以,创建了demo账户,允许demo账户在任何地方都能访问mysql数据库中shandong库. 方案一: 在安装mysql的机器上运行: 1: 创建user用户 复制代码 代码如下: CREATE USER demo IDENTIFIED BY “123456” 2. 复制代码 代码如下: mysql>GRANT ALL PRIVILEGES ON shandong.* TO ‘demo’@'%'WITH G

最近服务器很不稳定,于是重装了mysql 和php 服务,但是接着却遇到了很头疼的麻烦. 远程连接mysql是总是提示: 复制代码 代码如下: Lost connection to MySQL server at ‘reading initial communication packet’, system error: 0 很明显这是连接初始化阶段就丢失了连接的错误. google半天大多是说的注释掉配置文件中 bind-address = 127.0.0.1 这一句. 但是我的配置文件并没有配

前言 学习MySQL重新整理以前非MK的记载 描述 没有开启的话连接数据库报错:2003-can’t connect to MYSQL 方法/步骤 第一步 远程连接上Linux系统,确保Linux系统已经安装上了MySQL数据库.登陆数据库. mysql -u$user -p KaTeX parse error: Undefined control sequence: \* at position 44: … PRIVILEGES ON \̲*̲.\* TO 'username’@‘%’ IDENTIFIED BY ‘$password’ WITH GRANT OPTIO

而这些东西,正是新手很困惑的地方.一下是我的安装笔记,在Centos虚拟机上安装成功.中文的参考:http://xieyu.blog.51cto.com/213338/59749英文的参考 How to Install MySQL 5.0 on Linux,How to Install PHP 5 on Linux ,How to Install Apache 2 on Linux Linux mysqlapache php 安装过程.将apache ,mysql ,php 的tar.gz 文件

mysql 服务 centos mysql 服务器连接数据库_linux

第一中方法:比较详细以下的文章主要介绍的是MySQL 数据库开启远程连接的时机操作流程,其实开启MySQL 数据库远程连接的实际操作步骤并不难,知识方法对错而已,今天我们要向大家描述的是MySQL 数据库开启远程连接的时机操作流程. 1.d:MySQLin>MySQL -h localhost -u root 这样应该可以进入MySQL服务器 复制代码 代码如下: MySQL>update user set host = ‘%’ where user = ‘root’; MySQL&g

mysql 服务 centos mysql 服务器连接数据库_linux

今天配置Linux下MySQL数据库可以远程访问的问题,百度这方面的资料有很多,但是方法都一样,都试过了却未能解决,记录一下 第一步:在/etc/mysql/my.cnf下找到bind-address = 127.0.0.1 在这行前加个"#"进行注释,或者改为: bind-address = 0.0.0.0 允许任意IP访问:或者指定自己需要远程访问的IP地址. 然后重启mysql:sudo /etc/init.d/mysql restart 第二步:授权用户能进行远程连接 gra

在进行 ping和route后发现网络通信都是正常的,而且在mysql机器上进行本地连接发现是很快的,所以网络问题基本上被排除了.以前也遇到过一次这样的问题,可后来就不知怎么突然好了,这次又遭遇这样的问题,所以想看看是不是mysql的配置问题.在查询mysql相关文档和网络搜索后,发现了一个配置似乎可以解决这样的问题,就是在mysql的配置文件中增加如下配置参数: [mysqld]skip-name-resolve 在linux下配置文件是/etc/my.cnf,在windows下配置文件是my

前言 最近在工作中遇到了这个需求,估计搞了一个多小时才把这个远程连接搞好.一台本地电脑,一台云服务器,都是linux系统.下面来看看详细的介绍: 步骤 1.在服务器端开启远程访问 首先进入mysql数据库,然后输入下面两个命令: grant all privileges on *.* to ‘root’@‘%’ identified by ‘password’; flush privileges; 第一个*是数据库,可以改成允许访问的数据库名称 第二个 是数据库的表名称,代表允许访问任意的表 r

1.改表法.可能是你的帐号不允许从远程登陆,只能在localhost.这个时候只要在localhost的那台电脑,登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从"localhost"改称"%" 复制代码 代码如下: mysql -u root -pvmwaremysql>use mysql; mysql>update user set host =

vim /etc/my.cnf注释这一行:bind-address=127.0.0.1 ==> #bind-address=127.0.0.1保存退出.mysql -uroot -p123456 为需要远程登录的用户赋予权限: 复制代码 代码如下: mysql> GRANT ALL PRIVILEGES ON *.* TO root@“%” IDENTIFIED BY “123456”;mysql> flush privileges; 远程登录命令

mysql 服务 centos mysql 服务器连接数据库_算法_03

debian6系统: 首先先安装mysql吧: 打开终端(root)用户登入 apt-get purge mysql-server-5.5 安装完成后: 默认情况下Mysql只允许本地登录,所以需要修改配置文件将地址绑定给注释掉: 复制代码 代码如下: vim /etc/mysql/my.cnf #bind-address = 127.0.0.1

mysql 服务 centos mysql 服务器连接数据库_mysql 服务 centos_04

MySql远程连接无法打开解决办法 1.改表法. 请使用mysql管理工具,如:SQLyog Enterprise.navicate mysql 可能是你的帐号不允许从远程登陆,只能在localhost.这个时候只要在localhost的那台电脑使用mysql管理工具登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从"localhost"改称"%" 2. 授权法.

mysql 服务 centos mysql 服务器连接数据库_算法_05

一.概述 本文主要介绍通过federated存储引擎建立远程连接表 测试环境:mysql 5.6.21 二.步骤 开启federated存储引擎 先查看federated存储引擎存储引擎是否启用 SHOW ENGINES ; 默认mysql是没有开启federated存储引擎,我这里因为已经配置了. 开启federated存储引擎只需要在my.cnf文件中增加’federated’就可以. 创建远程连接表 mysql配置远程连接必须在本地创建federated存储引擎的表,配置远程连接参数,本

mysql 服务 centos mysql 服务器连接数据库_mysql_06

说明:当别的机子(IP )通过客户端的方式在没有授权的情况下是无法连接 MySQL 数据库的,如果需要远程连接 Linux 系统上的 MySQL 时,必须为其 IP 和 具体用户 进行 授权 .一般 root 用户不会提供给开发者.如:使用 Windows 上的 SQLyog 图形化管理工具连接 Linux 上的 MySQL 数据库,必须先对其进行授权. 1.在虚拟机中使用 root 用户登录 mysql 数据库 mysql -u root -p 说明:root 用户密码一般设置为 root 2

1. 安装MySQL: 利用下面三条命令安装相应软件: $sudo apt-get install mysql-server $sudo apt-get install mysql-client $sudo apt-get install libmysqlclient-dev 在执行第一条命令的过程中,需要设置MySQL的root账号的密码. 利用下面的命令查看MySQL的scoket状态,若处在listen状态则表示安装成功. $sudo netstat -tap | grep mysql 2

Centos7使用yum安装MySQL以及如何实现远程连接,因为MySQL被Oracle收购,目前推荐使用mariadb数据库 步骤如下: 1)yum install mariadb 2) yum install mariadb-server 3) yum install mariadb-devel chmod -R 770 /var/lib/mysql systemctl restart mariadb.service 至此MySQL安装完成 初始化密码: 执行mysql命令,设置初始密码 S

1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库. 因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的状态下,其他的用户也可以任意地登录和修改MySQL的信息.可以采用将MySQL对外的端口封闭,并且停止Apache以及所有的用户进程的方法实现服务器的准安全状态.最安全的状态是到服务器的Console上面操作,并且拔掉网线. 2.修改MySQL的登录设置: vim /etc/my.cnf 在[mysqld]的段中加上一句:skip-g