实现客户端连接Mysql数据库服务器
以前学习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数据库服务器的更多相关文章
- 远程客户端连接MysqL数据库太慢解决方案
远程客户端连接MysqL数据库太慢解决方案局域网客户端访问mysql 连接慢问题解决. cd /etc/mysql vi my.conf [mysqld] skip-name-resolve 此选项禁 ...
- 客户端连接mysql数据库反应慢
远程客户端连接MysqL数据库太慢解决方案 局域网客户端访问mysql 连接慢问题解决 编辑mysql配置文件 # vi my.conf [mysqld] skip-name-resolve 重启my ...
- myeclipse自带客户端连接mysql数据库
一:开启mysql服务器 开始——服务 二:打开myeclipse数据库连接视图 找到DB Browser, 三:新建一个连接 如图: 四:填写相关连接参数,并添加jar包驱动 五:然后一路next, ...
- atitit.客户端连接oracle数据库的方式总结
客户端连接oracle数据库的方式总结 目录 Java程序连接一般使用jar驱动连接..... 桌面GUI一般采取c语言驱动oci.dll 直接连接... 间接连接(需要配置tns及其envi var ...
- Geronimo应用服务器和MySQL数据库服务器
就是Web 2.0的全部,尽管该术语出现才几乎一年的时间,但现在好像只有烹饪杂志还没有加入到讨论Web 2.0未来出路的行列中.自从出现了里程碑式的文章"What Is Web 2.0:De ...
- 配置ORACLE 客户端连接到数据库
--================================= -- 配置ORACLE 客户端连接到数据库 --================================= Oracle ...
- 用友U8客户端连接不上服务器全攻略
用友U8客户端连接不上服务器全攻略 http://www.enet.com.cn2009年09月23日09:26 来自论坛 [导读]:如果网络不通,就让用户查找网络原因 检查步骤: 1.网络是否通? ...
- 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 ...
- 启用CentOS6.5 64位安装时自带的MySQL数据库服务器
本人在虚拟机上又安装了一台linux机器,作为MySQL数据库服务器用,在安装时选择了系统自带的MySQL服务器端,以下是启用步骤. 首先开启mysqld服务 #service mysqld star ...
随机推荐
- Linux 进程间通信 信号(signal)
1. 概念: 1)信号是在软件层次上对中断机制的一种模拟,是一种异步通信方式 2)信号可以直接进行用户空间进程和内核进程之间的交互,内核进程也可以利用它来通知用户空间进程发生了哪些系统事件. 3)如果 ...
- mysql组合查询
使用UNION 多数SQL查询都只包含一个或多个表中返回数据的单条SELECT语句.MySQL也允许执行多个查询(多条SELECT语句),并将结果作为单个查询结果集返回.这些组合查询通常称为并(uni ...
- Mysql添加用户和数据库
先创建数据库 创建用户并赋予一个数据库的所有权限 use mysql; create database databaseName character set utf8; grant all privi ...
- Ruby 类和对象
Ruby 类和对象 Ruby 是一种完美的面向对象编程语言.面向对象编程语言的特性包括: 数据封装 数据抽象 多态性 继承 这些特性将在 面向对象的 Ruby 中进行讨论. 一个面向对象的程序,涉及到 ...
- 牛客多校第三次B——线段树维护线性基交
写线性基交函数时调试了半天.. #include<bits/stdc++.h> using namespace std; #define ll long long #define maxn ...
- NX二次开发-UFUN查询对象的类型和子类型UF_OBJ_ask_type_and_subtype
NX9+VS2012 #include <uf.h> #include <uf_obj.h> #include <uf_modl.h> #include <u ...
- LeetCode 746. Min Cost Climbing Stairs (使用最小花费爬楼梯)
题目标签:Dynamic Programming 题目给了我们一组 cost,让我们用最小的cost 走完楼梯,可以从index 0 或者 index 1 出发. 因为每次可以选择走一步,还是走两步, ...
- 得益于AI,这五个行业岗位需求将呈现显著增长趋势
得益于AI,这五个行业岗位需求将呈现显著增长趋势 人工智能与人类工作是当下许多人津津乐道的一个话题,而讨论的重点大多是围绕在"未来人工智能会不会抢走我们的工作"这个方面.本文作者 ...
- 2-MySQL高级-事务-基本概念(1)
事务 1. 为什么要有事务 事务广泛的运用于订单系统.银行系统等多种场景 例如: A用户和B用户是银行的储户,现在A要给B转账500元,那么需要做以下几件事: 检查A的账户余额>500元: A ...
- HTTP请求默认值
填写后,后面的请求如果对应的未填写,默认使用该参数