Ubuntu安装了MySQL但打不开_Ubuntu 16.04 MySQL安装及遇到问题解决方法

1、安装MySQL

在 Ubuntu 16.04 中,默认情况下,只有最新版本的MySQL包含在APT软件包存储库中。在撰写本文时,那是MySQL 5.7

要安装它,只需更新服务器上的包索引并安装默认包 apt-get。

sudo apt-get update

sudo apt-get install mysql-server

系统将提示您在安装过程中创建 root 密码。选择一个安全的密码,并确保你记住它,因为你以后需要它。接下来,我们将完成MySQL的配置。

2、配置MySQL

因为是全新安装,您需要运行附带的安全脚本。这会更改一些不太安全的默认选项,例如远程 root 登录和示例用户。在旧版本的MySQL上,您需要手动初始化数据目录,但Mysql 5.7已经自动完成了。

运行安全脚本。

sudo mysql_secure_installation

这将提示您输入您在步骤1中创建的root密码。您可以按Y,然后ENTER接受所有后续问题的默认值,但是要询问您是否要更改root密码。您只需在步骤1中进行设置即可,因此无需现在更改。

最后,我们来测试MySQL安装。

3、测试MySQL

按上边方式安装完成后,MySQL应该已经开始自动运行了。要测试它,请检查其状态。

systemctl status mysql.service

您将看到类似于以下内容的输出:

mysql.service - MySQL Community Server

Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: en Active: active (running) since Wed 2016-11-23 21:21:25 UTC; 30min ago Main PID: 3754 (mysqld) Tasks: 28 Memory: 142.3M CPU: 1.994s CGroup: /system.slice/mysql.service └─3754 /usr/sbin/mysqld

如果MySQL没有运行,您可以启动它:

sudo systemctl mysql start

4、遇到问题及解决方法

1)使用navicat远程连接mysql时报错ERROR 2003

原因就是Mysql数据库的默认配置文件my.cnf(ubuntu 16.04下是/etc/mysql/mysql.conf.d/mysqld.cnf)中的bind-address默认为127.0.0.1,所以就算你创建了可以remote访问的用户,你也不能使用mysql -h命令进行访问,若访问就会出现上出问题,因为此时Mysql只接受localhost,所以需要把bind-address = 127.0.0.1屏蔽掉。

然后重启musql服务

sudo systemctl restart mysql.service

修改前通过 netstat -an | grep 3306 命令可以看到是本地地址:

tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN

修改将该bind-address属性注释掉再重启mysql服务可以发现地址已经变了:

tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN

2)使用navicat远程连接mysql时报错ERROR 1130

原因是无法给远程连接的用户权限问题。如下操作即可解决。

在本机用IP:127.0.0.1登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称'%'。

mysql -u root -p

mysql>use mysql;

mysql>select 'host' from user where user='root';

mysql>update user set host = '%' where user ='root';

mysql>flush privileges;

mysql>select 'host' from user where user='root';

第一句是以权限用户root登录

第二句:选择mysql库

第三句:查看mysql库中的user表的host值(即可进行连接访问的主机/IP名称)

第四句:修改host值(以通配符%的内容增加主机/IP地址),当然也可以直接增加IP地址

第五句:刷新MySQL的系统权限相关表

第六句:再重新查看user表时,有修改。

重起mysql服务即可完成。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值