今天在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;

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

Ubuntu上安装MySql过程,以及遇到的一些问题的更多相关文章

  1. ubuntu上安装mysql 编译安装

    为什么要折腾?首先说明的是ubuntu上安装mysql等软件是非常容易简单的,其简单的程度盖过windows上的安装,一句sudo apt-get install就可以搞定.如果想用最简便的方法安装m ...

  2. Ubuntu上安装MySQL

    Ubuntu上安装MySQL非常简单只需要几条命令就可以完成.`````` sudo apt-get update sudo apt-get install mysql-server 会弹出提示,让输 ...

  3. ubuntu上安装 MySQL 启动/停止 连接MySQL

    1.Ubuntu上安装MySQL服务   1.安装服务端   sudo apt-get install mysql-server    2.安装客户端   sudo apt-get install m ...

  4. ubuntu上安装mysql及导入导出

    ubuntu上安装mysql:  1. sudo apt-get install mysql-server 2. apt-get isntall mysql-client3. sudo apt-get ...

  5. ubuntu上安装mysql的正确步骤

    1.在Ubuntu software Center中下载mysql:[注:mysql下载下来后好像就安装上了] 2.使用命令检查mysql是否已安装上: 2.1 运行sudo netstat -tap ...

  6. 在Ubuntu上安装Mysql For Python

    安装: 首先安装pip,并且把pip更新到最小版本 apt-get install python-pip pip install -U pip 安装mysql开发包 apt-get install p ...

  7. ubuntu 上安装mysql

    打开"终端窗口",输入"sudo apt-get install mysql-server mysql-client"-->回车-->输入" ...

  8. ubuntu上安装MySQL详解

     1. 安装 在终端输入 sudo apt-get install mysql-server mysql-client 回车 2.安装完成后检测MySQL的状态 systemctl status my ...

  9. 怎样在 Ubuntu Linux 上安装 MySQL

    本教程教你如何在基于 Ubuntu 的 Linux 发行版上安装 MySQL.对于首次使用的用户,你将会学习到如何验证你的安装和第一次怎样去连接 MySQL. -- Sergiu MySQL 是一个典 ...

随机推荐

  1. 什么是js和js的基本语法

    时间:2016年12月15日 先讲讲基础语法: 大部分是来操作表单: js动态效果和数据交互(ajax?) js也有自己的API js大部分的DOM操作都是针对input的. 案例学习,对注册页面的简 ...

  2. jsonp的使用

    假设我们已经了解什么是同源策略,以及什么是浏览器的同源策略的限制. 现在我们需要在a.demo.com下的某个页面one.html 里加载不同域b.demo.com下的json数据. 我们都知道用&l ...

  3. 知乎背景图 canvas 效果

    思路分析: 1.创造一块画布, 2.在画布内随机产生一些小球,小球位置,半径,颜射,大小,速度等都可以随机产生, 3.定义画小球函数与小球移动函数, 4.将每一个小球圆心都与其它小球链接, 5判断每一 ...

  4. R语言实战(一)介绍、数据集与图形初阶

    本文对应<R语言实战>前3章,因为里面大部分内容已经比较熟悉,所以在这里只是起一个索引的作用. 第1章       R语言介绍 获取帮助函数 help(), ? 查看函数帮助 exampl ...

  5. node.js基础 1之 HTTP事件回调进阶(HTTP模块)

    HTTP概念进阶 1. 什么是回调? 回调是异步编程时的基础,将后续逻辑封装成起始函数的参数,逐层嵌套 2. 什么是同步/异步? 同步是指:发送方发出数据后,等接收方发回响应以后才发下一个数据包的通讯 ...

  6. HTML5Viewer中如何运行时绑定多数据源

    很多报表控件提供HTML5Viewer 支持跨设备的报表系统,当然在很多情况下,一个系统可包含多个报表文件,这些报表的数据有可能均为运行时绑定数据源,那么在html5viewer中对一张报表通过重写W ...

  7. css学习笔记 4

    伪类可以用来指定一个或多个与其相关的选择符的状态,如a:link a:active a:hover a:visited :ie7及以下不支持. 注意:上面与超链接相关的伪类的顺序必须是:LVHA. 伪 ...

  8. java web 之 SpringMVC4.x配置

    合肥程序员群:49313181.    合肥实名程序员群:128131462 (不愿透露姓名和信息者勿加入) Q  Q:408365330     E-Mail:egojit@qq.com 综述: 有 ...

  9. 使用SecureCRT远程链接Ubuntu出现 Change of username or service not allowed的问题

    RT:    首先是确认ubuntu上有运行 sshd服务的 但是用SecureCRT链接时报错,默认用户名是root: 打开ssh_config检查下是否禁止直接用root登陆 这句 改成yes o ...

  10. jquery multiselect使用示例

    多选下拉框开源组件:https://github.com/ehynds/jquery-ui-multiselect-widget html部分: <select multiple id=&quo ...