以前学习mysql的时候,都是部署在本机,这样不存在客户端主机与服务器主机连接的问题,都是直接用localhost登录就行。

今天因项目需要,我们把mysql部署在服务器上,然后客户端装了client,这样就遇到客户端连接数据库服务器的问题。折腾了蛮久,发现即使是默认的root账户也没能连上服务器。把今天的解决过程记录如下:

1、在服务器上安装好mysql server 后,在公司内网开通3306端口(mysql的默认端口);同时,服务器也要支持外网的访问,又增加外网端口的访问权限。最后,在客户端主机,通过"telnet"命令,检查3306端口已经可以通过客户端主机连接了。

2、客户端装好mysql client,发现root用户无法连接,也就是客户端无法用workbench实现数据库、用户、数据表等的操作。这里有两个办法,一个是直接先授权root用户,可以在任何主机访问,然后再新建数据库、添加表等;另一种方法,是通过服务器端mysql指令,添加新数据库,新的用户,然后赋予用户所有主机的连接权限,算是一步到位。

方法一: 将root用户的权限改成任何主机都能访问:

在服务器上,运行MySQL 5.7 Command Line Client,然后执行以下命令:

(1)use mysql;              进入mysql数据库

(2)select host,user,password from user;  查询数据库的用户信息

(3)update user set host='%' where host='localhost';   将上表中root的访问主机改为所有

(4)flush privileges;       刷新权限

(5)exit;  退出mysql

完成以上步骤,在客户端主机workbench中,用root/password,即可登陆了。

方法二:直接通过mysql命令,创建数据库,用户信息,以及客户端主机访问权限设置。

在服务器上,运行MySQL 5.7 Command Line Client,然后执行以下命令:

(1)show databases;    查看mysql服务器上已经存在的数据库。下面新建时,避免建重复的数据库

(2)create database SZY;    创建数据库“SZY”

(3)create user szy identified by "szy";   创建szy用户,设定密码szy

(4)grant all privileges on SZY.*to'szy'@'%'identified by 'szy' with grant option;   给用户赋予指定数据库的所有权限,并允许任何客户端主机连接

(5)flush privileges;  刷新上面权限设置

(6)exit;  退出mysql

完成以上命令,在客户端尝试连接,如下:

注意:关于sql命令直接在服务器上的mysql命令管理器质性就行;每个sql命令都必须以“;”结束,否则报错,或质性不成功。

实现客户端连接Mysql数据库服务器的更多相关文章

  1. 远程客户端连接MysqL数据库太慢解决方案

    远程客户端连接MysqL数据库太慢解决方案局域网客户端访问mysql 连接慢问题解决. cd /etc/mysql vi my.conf [mysqld] skip-name-resolve 此选项禁 ...

  2. 客户端连接mysql数据库反应慢

    远程客户端连接MysqL数据库太慢解决方案 局域网客户端访问mysql 连接慢问题解决 编辑mysql配置文件 # vi my.conf [mysqld] skip-name-resolve 重启my ...

  3. myeclipse自带客户端连接mysql数据库

    一:开启mysql服务器 开始——服务 二:打开myeclipse数据库连接视图 找到DB Browser, 三:新建一个连接 如图: 四:填写相关连接参数,并添加jar包驱动 五:然后一路next, ...

  4. atitit.客户端连接oracle数据库的方式总结

    客户端连接oracle数据库的方式总结 目录 Java程序连接一般使用jar驱动连接..... 桌面GUI一般采取c语言驱动oci.dll 直接连接... 间接连接(需要配置tns及其envi var ...

  5. Geronimo应用服务器和MySQL数据库服务器

    就是Web 2.0的全部,尽管该术语出现才几乎一年的时间,但现在好像只有烹饪杂志还没有加入到讨论Web 2.0未来出路的行列中.自从出现了里程碑式的文章"What Is Web 2.0:De ...

  6. 配置ORACLE 客户端连接到数据库

    --================================= -- 配置ORACLE 客户端连接到数据库 --================================= Oracle ...

  7. 用友U8客户端连接不上服务器全攻略

    用友U8客户端连接不上服务器全攻略 http://www.enet.com.cn2009年09月23日09:26 来自论坛 [导读]:如果网络不通,就让用户查找网络原因 检查步骤: 1.网络是否通? ...

  8. phoenix客户端连接hbase数据库报错:Traceback (most recent call last): File "bin/sqlline.py", line 27, in <module> import argparse ImportError: No module named argparse

    环境描述: 操作系统版本:CentOS release 6.5 (Final) phoenix版本:phoenix-4.10.0 hbase版本:hbase-1.2.6 现象描述: 通过phoenix ...

  9. 启用CentOS6.5 64位安装时自带的MySQL数据库服务器

    本人在虚拟机上又安装了一台linux机器,作为MySQL数据库服务器用,在安装时选择了系统自带的MySQL服务器端,以下是启用步骤. 首先开启mysqld服务 #service mysqld star ...

随机推荐

  1. 数组foreach

    简单使用 代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...

  2. python异常整理

    一.操作excel 时异常 1.PermissionError: [Errno 13] Permission denied (1)原因:权限错误:[Errno 13] 权限被拒绝 错误产生的原因是文件 ...

  3. Python自学:第五章 动手试一试 4-3

    # -*- coding: GBK -*- numbers = ['] for number in numbers: print(number) 输出为: 1 2 3 4 5 6 7 8 9 10 1 ...

  4. Unity 2018 version class.jar path

    { C:\Program Files\Unity\Editor\Data\PlaybackEngines\AndroidPlayer\Variations\mono\Release\Classes }

  5. Cucumber:启动类配置

    Cucumber:启动类配置 package com.steps; import cucumber.api.CucumberOptions; import cucumber.api.junit.Cuc ...

  6. 思维题——牛客多校第六场D

    这题的不能用二分做,因为不满足单调性的 可以用multiset做 #include<bits/stdc++.h> #define ll long long #define rep(i,a, ...

  7. NX二次开发-UFUN获取显示在NX交互界面的对象UF_OBJ_is_displayable

    NX9+VS2012 #include <uf.h> #include <uf_disp.h> #include <uf_obj.h> #include <u ...

  8. DZY LOVES MATH (莫比乌斯反演)

    OK!开始更新莫比乌斯反演 先看了一下数据范围,嗯,根据\(jiry\)老师的真言,我们一定是可以筛一遍然后用根号或者是\(log\)的算法. 题目思路挺简单,就是把原始的式子化成: \(\sum_{ ...

  9. windows下安装sass,以及常见错误和解决办法

    简介: sass依赖于ruby环境,安装sass之前得先装ruby. 1.安装ruby 1.1.下载地址:http://rubyinstaller.org/downloads 1.2.注意事项:安装时 ...

  10. js 事件驱动原理

    还记得当初学JAVA-GUI编程时学习过事件监听机制,此时再学习JavaScript中的事件驱动机制,不免简单.当初学习时也是画过原理图,所以从原理图开始吧! js是采用事件驱动(event-driv ...