今天在Ubuntu服务器上安装MySql的时候遇到了一些问题,记录下来,以防以后忘记。

安装环境:Ubuntu14.04

安装命令:

//安装Mysal服务端
//会提示输入root密码
sudo apt-get install mysql-server
//安装Mysql客户端
sudo apt-get install mysql-client
sudo apt-get install libmysqlclient-dev

错误一描述:

远程连接MySql的时候出现错误:错误码2203 Can`t connect to MySql server on 'XXX.XXX.XX.XXX'

解决思路:首先以为是防火墙的问题,但是仔细查看了服务器上的防火墙,发现防火墙早已经被我关闭了,然后只有网上检索找到了问题,在/etc/mysql/my.cnf中有一段代码:

#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 127.0.0.1

其中bind-address表示只绑定了本地连接,将该代码注释之后,重启MySql服务:

sudo service mysql restart

该问题貌似只在Ubuntu上存在,在RedHat中并没有此问题。

错误二描述

在解决了上述问题之后,又出现了新的错误:错误码:1130 Host 'XXX.XX.XX.XX' is not allowed to connect to this MySql Server

解决思路:第一反应就是没有权限,然后检索复习了一下赋权的操作,记录下来以防忘记:

通过Ubuntu上的MySql客户端连接MySql,执行命令(前提是要安装MySql的客户端哦):

#改命令执行完后输入密码
mysql -u root -p

方法一:改表法

通过修改mysql数据库中的user表来进行赋权,Sql如下:

#选择mysql数据库
mysql> use mysql;
#更改root用户权限,字段host表示允许连接的ip,%表示任意ip
mysql> update user set host='%' where user='root' ;
#更新权限这一步很重要,一定不能忘记!!因为使用的是改表法,比较非正规,所以需要
#更新权限
mysql> flush privileges;

方法二:授权法

#该命令解释:
#grant命令表示赋权操作
#all privileges 表示所有的权限,其中权限有select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限
#on 后面跟着的是 <数据库名>.<表名> *.* 表示全部的数据库和表
#to 后面跟着的是 <用户名>@<IP地址> %表示任意IP
#identified by 后面是密码
#with grant option 表示具有传递授权功能
mysql> grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;

使用其中一种方法完美解决问题!

最新文章

  1. 【转】Web测试方法
  2. 关于当传过来的值转换成string类型报错的问题
  3. Why TestNG?
  4. Android学习笔记(第二篇)View中的五大布局
  5. 百科编辑器ueditor应用笔记
  6. HDU 1498:50 years, 50 colors(二分图匹配)
  7. visual studio 2010运行速度提速
  8. win7 绿色版MySQL安装与配置
  9. VC实现卡拉OK字幕叠加
  10. [转载] redis-cluster研究和使用
  11. Nmap简单扫描
  12. 用JavaScript+css制作下拉式菜单
  13. centos6.9 PHP的编译安装并连接nginx
  14. winform checkedlistbox 设置行颜色
  15. 从字节码层面看“HelloWorld”
  16. Vue2 第三天学习
  17. CentOS 7命令行安装GNOME、KDE图形界面
  18. Android 手动调用 返回键
  19. Flutter基础用法解析
  20. 廖雪峰Java4反射与泛型-3范型-6super通配符

热门文章

  1. 微信,qq,微博如何不用每次清缓存就能看到h5修改过的结果
  2. struts2漏洞集合
  3. RPM安装MySQL
  4. C# redis使用
  5. Git初步学习
  6. 如何隐藏winform中报表设计器中的按钮
  7. Java多线程初探
  8. django数据库的增删改查
  9. 含有多个main方法的jar包的运行方式(适用于用java写的工具类)
  10. 数据库 MySQL安装图解