ubuntu16安装mysql5.7详细教程及问题汇总

环境:

虚拟机的Ubuntu16.04

Windows系统下Navicat,xshell

本文主要介绍在Ubuntu16.04安装MySQL,并用Window的Navicat连接到Ubuntu的MySQL

Ubuntu16.04安装:

更新Ubuntu的apt

$ sudo apt update

安装mysql

$ sudo apt install mysql-server

安装过程中会提示我们设置MySQL root用户的密码,输入密码后,按tab键选中OK,回车确认

确认密码,再输入与上一步相同的密码,按tab键选中OK,回车确认

安装完成后,MySQL服务讲自动被启动,可以用如下命令查查看mysql正在运行

$ sudo netstat -tap | grep mysql

有类似如下输出为安装并启动成功 

 如执行命令后无任何输出,请检查是否安装好、确认mysql是否启动(mysql的启动命令为 $ service mysql start)

用navicat连接mysql:

打开navicat(需先在Windows下安装好),点击连接

输入 虚拟机IP 和 MySQL密码 ,点击左下角的 测试连接

 

会有如下报2003错误

接下来解决报错

修改mysqld.cnf文件,注释掉bind-address           = 127.0.0.1一行,注释方法:在行首添加 

$ sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

找到bind-address  = 127.0.0.1一行,如下 

添加 # 号注释后截图如下: 

重启Ubuntu MySQL服务

$ sudo service mysql restart

点击 Navicat的连接测试,报错如下:

解决过程如下:

进入mysql命令行

$ mysql -u root -p

输入MySQL密码,进入到mysql命令行,按如下步骤进行设置

root@VM-0-9-ubuntu:/etc/mysql/mysql.conf.d# mysql -u root -p
Enter password: 
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
root@VM-0-9-ubuntu:/etc/mysql/mysql.conf.d# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.7.31-0ubuntu0.16.04.1 (Ubuntu)

Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> select 'host' from user where user='root';
ERROR 1046 (3D000): No database selected
mysql> select 'host' from user where user='root';
ERROR 1046 (3D000): No database selected
mysql> 
mysql> 
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> 
mysql> 
mysql> select 'host' from user where user='root';
+------+
| host |
+------+
| host |
+------+
1 row in set (0.00 sec)

mysql> update user set host = '%' where user ='root';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> select 'host'   from user where user='root';
+------+
| host |
+------+
| host |
+------+
1 row in set (0.00 sec)

mysql> quit;
Bye

1045 Access denied for user 'root'@'localhost' (using password: YES)解决办法 

这个是网上搜集汇总有效的

set password for 'root'@'%' =password('数据库英文密码'); #设置mysql数据库密码

grant all privileges on *.* to 'root'@'192.168.0.103' identified by '123456';
如果你是本地登录的,那么:
grant all privileges on *.* to 'root'@'localhost' identified by '123456';
当然你也可以直接改成这样:
grant all privileges on *.* to 'root'@'%' identified by '123456';
就可以给所有ip都设定root登陆了。
如果授权成功,会有Query OK的提示。
然后:
flush privileges;
这个是刷新授权的意思,如果没有这句话,授权可能无法立刻生效。
exit;
这个是退出的意思

我的解决办法如下:

iptables -A INPUT -p tcp --dport 3306 -j DROP

参考链接:

解决2003错误参考:https://www.cnblogs.com/ruofengzhishang/p/5477502.html

解决1130错误参考:https://www.cnblogs.com/dulixiaoqiao/p/7040078.html

解决1045错误参考:https://cloud.tencent.com/developer/article/1497659  ,https://www.jianshu.com/p/c3d77ce4ae05

完成! enjoy it!

进QQ群(779809018)免费领取学习资源,疑难问题解答。同时欢迎大家关注我的微信公众号:代码帮 ,免费领取学习资源和学习每天不定时推送的技术性文章。

本公众号将秉持活到老学到老学习无休止的交流分享开源精神,汇聚于互联网和个人学习工作的精华干货知识,一切来于互联网,反馈回互联网。
目前研究领域:大数据、机器学习、深度学习、人工智能、数据挖掘、数据分析。 语言涉及:Java、Scala、Python、Shell、Linux等 。同时还涉及平常所使用的手机、电脑和互联网上的使用技巧、问题和实用软件破解。 只要你一直关注和呆在群里,每天必须有收获,讨论和答疑QQ群:大数据和人工智能总群(779809018)微信公众号(代码帮)每天分享最新IT、大数据和人工智能新技术。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
要在Ubuntu安装MySQL5.7,可以按照以下步骤进行操作: 1. 首先,执行以下命令来安装MySQL服务: ``` sudo apt update sudo apt install mysql-server-5.7 ``` 这将会安装MySQL 5.7的服务器组件。 2. 在安装过程中,系统会提示你设置root用户的密码。请根据提示输入并确认密码。 3. 安装完成后,可以通过以下命令验证MySQL版本: ``` dpkg -l | grep mysql ``` 在输出结果中,你应该能够看到mysql的版本为5.7.x。 请注意,安装完成后,可能会遇到普通用户无法登录MySQL的问题。这是因为在安装过程中,root用户的plugin被修改为了auth_socket,而不是密码登录的plugin。为了解决这个问题,你可以按照以下步骤进行设置: 1. 以root用户身份登录到MySQL服务: ``` sudo mysql -u root ``` 2. 在MySQL命令行中,执行以下命令更改root用户的认证方式: ``` ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码'; ``` 请将"你的密码"替换为你的MySQL root密码。 3. 执行以下命令刷新权限: ``` FLUSH PRIVILEGES; ``` 现在,你应该可以使用root用户的密码进行MySQL登录了。 希望这些信息对你有帮助。如果还有其他问题,请随时提问。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Ubuntu20.04安装MySQL5.7-实测3种方法(保姆级教程)](https://blog.csdn.net/liuhuango123/article/details/128264867)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [Ubuntu 18.04 安装mysql5.7](https://download.csdn.net/download/weixin_38640794/14090649)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值