Linux安装MySQL后无法通过IP地址访问处理方法

news2024/11/18 8:25:01


本文主要总结Linux安装Mysql后,其他主机访问不了MySQL数据库的原因和解决方法

环境说明:

  • MySQL 5.7.30
  • CentOS Linux release 7.6.1810 (Core)

创建完Mysql数据库后可以查看mysql 日志获取root 用户登录密码

[root@localhost mysql-5.7.30]# cat /var/log/mysqld.log

 使用获取到的密码就可以登录数据库了,登录后显示mysql> 表示成功

[root@localhost etc]# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.30

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> 
mysql> 

登录后root用户不能直接使用,会提示需要先重置密码,重置密码的时候可能会出现not stifsy current plicy错误。 默认情况下密码长度是8位, 如果希望密码简单好记,需要修改规则

mysql> set password for root@localhost=password("root");
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
mysql> 
mysql> set global validate_password_length=4;
Query OK, 0 rows affected (0.00 sec)

mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)

mysql> set password for root@localhost=password("root");
Query OK, 0 rows affected, 1 warning (0.00 sec)


mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

mysql> use mysql;
Database changed
mysql> 

此时如果使用Navicat链接Mysql数据库是链接不上的,

 Mysql数据库系统中,每一用户都有自己的用户名和密码, 同时还有自己的主机名称,root用户默认的主机名称是 localhost, 所以只能localhost方法, 不能使用其他主机访问。  如果此时需要设置root用户其他主机也可以访问,修改后使用flush privileges 刷新权限,这样不用重启。 

mysql> grant all privileges on *.* to 'root'@'%' identified by 'root';
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> 
mysql> select user ,host from user;
+---------------+-------------+
| user          | host        |
+---------------+-------------+
| root          | %           |
| mysql.session | localhost   |
| mysql.sys     | localhost   |
| root          | localhost   |
+---------------+-------------+
4 rows in set (0.00 sec)

mysql> 

此时使用IP访问也可能不成功,部分人可能访问数据库成功, 部分人可能访问数据库库失败。 如果访问链接失败, 再查看my.cnf或者my.ini的配置, 查找bind-address参数。将其注释或者修改为0.0.0.0或者服务器的IP地址。如果没有可以手写此配置

[root@localhost ~]# cd /etc
[root@localhost etc]# 
[root@localhost etc]# ls
adjtime                  ethertypes          ld.so.cache               plymouth        
crypttab                 hostname            my.cnf                    resolv.conf     tuned
csh.cshrc                hosts               my.cnf.d                  rpc             udev
[mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
bind-address=0.0.0.0

# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

 到此又会有部分人访问数据库成功, 部分人访问数据库仍然失败, 如果还是悲剧的这部分人,还需要查看防火墙设置,Linux系统中,防火墙iptables可能会阻止MySQL的外部访问。使用下面的命令查看


[root@localhost etc]# sudo iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:cslistener
ACCEPT     all  --  anywhere             anywhere             ctstate RELATED,ESTABLISHED

......略

 此时列表中如果没有mysql 信息,那么可以执行下面的命令允许外部访问Myslq, 其中dport 指定3306, 3306是MySQL的默认端口。执行后再使用sudo iptables -L查看会出现mysql访问信息。如下

[root@localhost etc]# sudo  iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
[root@localhost etc]# 
[root@localhost etc]# sudo iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:mysql
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:cslistener
ACCEPT     all  --  anywhere             anywhere             ctstate RELATED,ESTABLISHED

......略

最后重启MySQL后就可以访问MySQL数据库了

 上一篇:Linux 安装MySQL-5.7.30

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/545363.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2 机器学习知识 Softmax回归 deep learning system

机器学习算法的三个主要部分 The hypothesis class: 模型结构loss fuction 损失函数An optimization method:在训练集上减小loss的方法 多分类问题 训练数据: x ( i ) ∈ R n , y ( i ) ∈ 1 , . . . , k f o r i 1 , . . . m x^{(i)}\in \mathbb{R}…

在Fedora-Workstation-Live-x86_64-36-1.5中编译安装信使iptux0.7.6

在Fedora-Workstation-Live-x86_64-36-1.5中编译安装信使iptux0.7.6 https://github.com/iptux-src/iptux/tree/v0.7.6 下载信使iptux-0.7.6.zip,类似飞鸽传书ipmsg,已经尝试过0.8.3版本不成功 [rootfedora ~]# unzip /home/ruhong/download/iptux-0.7…

usb摄像头驱动-core层driver.c

usb摄像头驱动-core层driver.c 文章目录 usb摄像头驱动-core层driver.cusb_bus_typeusb_device_matchusb_uevent usb_register_driver 在ubuntu中接入罗技c920摄像头打印的信息如下: 在内核中,/driver/usb/core/driver.c 文件扮演了 USB 核心驱动程序管…

自动化遍历测试技术之android maxim遍历测试工具

这里写目录标题 一、问题1、例如app中存在问题2、解决方法3、改进策略4、自动遍历测试5、常见遍历工具与技术 二、android maxim 遍历测试工具策略使用环境预备命令行模式策略 三、android fastbot 遍历测试工具使用 一、问题 业务线众多 业务流程复杂 依赖传统券商一些资源 …

2023年最新软件测试面试题,自动化测试面试题,接口自动化测试面试题详解,对标大厂。

【软件测试面试题】 1、你的测试职业发展是什么?   测试经验越多,测试能力越高。所以我的职业发展是需要时间积累的,一步步向着高级测试工程师奔去。而且我也有初步的职业规划,前3年积累测试经验,按如何做好测试工程…

软件测试之性能测试

性能测试是与时间相关的。 主要内容 性能测试基础概念和术语介绍性能测试模型性能测试分类介绍性能测试实施与管理 性能测试基础 为什么要进行性能测试(WHY)(最重要) 应用程序是否能够很快的响应用户的要求?应用程…

【C程序设计】——程序=算法+数据结构

目录 🍊🍊一、什么是算法? 🍊🍊二、简单的算法举例 🍊🍊三、算法的特性 🍊🍊四、怎样表示一个算法 一个程序主要包括以下两方面的信息: (1&am…

软件测试项目实战经验附视频以及源码【商城项目,app项目,电商项目,银行项目,医药项目,金融项目】

前言: ​​大家好,我是凡叔。 很多初学的测试小白都在烦恼找不到合适的项目去练习,这也是难倒大部分测试小白的一个很常见的问题,项目经验确实是每一个测试非常宝贵的经验!这里凡叔给大家找了一些常用的项目合集&…

数据结构与算法十二 图进阶

一 有向图 在实际生活中,很多应用相关的图都是有方向性的,最直观的就是网络,可以从A页面通过链接跳转到B页面,那么a和b连接的方向是a->b,但不能说是b->a,此时我们就需要使用有向图来解决这一类问题,它和我们之前…

行业集体迈进全屋智能,华为的“空间智能跃升”独领风骚?

智能家居近年来发展飞速,市场正在从最初的单品智能向全屋联动智能切换。 据IDC数据,2022年中国全屋智能市场销售额突破100亿元,同比增长54.9%。一个住宅往往由卧室、客厅、厨房、卫生间、餐厅等多个基本功能区组成,全屋智能便是在…

企业进行产品管理内训至少有这5大好处

企业需要重视产品管理,建立完善的产品管理流程和标准,提高员工的产品管理能力,以应对各种挑战和机遇,在企业进行内训是最好的方式。 企业进行产品管理内训的目的是为了提高员工的产品管理能力,从而实现以下几个方面的好…

ChatGPT创始人采访 | GPT-4报告中文版

关于采访OpenAl Co创始人 Greg Brockman的要点记录分析,先介绍Gpt-4的基本内容,然后说下采访的重点部分,最后读一下154页Gpt-4的技术报告,这个大家可以在官网下载文档后,百度翻译支持每人限量一次的PDF翻译。面对文心一…

图(课堂笔记)

图的引入与术语 两种图 1. 有向图(Digraph):Each edge of arc has an associated direction. 2. 无向图(non-directed graph):Every edge or arc is two-way. 简单图是一种特殊的无向图。无向图没有自环…

即时设计是一款什么软件,有什么优势

即时设计是什么软件 即时设计是一款「专业UI设计工具」,不受平台限制,打开浏览器即可开始创作。它不仅具备精细化设计能力,还自带丰富的共享设计资源,同时支持多人实时协作、设计成果一键分享交付,让设计师在工作中每…

C++:使用位图处理海量数据

目录 一. 什么是位图 1.1 海量数据处理问题 1.2 位图的概念 二. 位图的实现 2.1 成员变量及成员函数 2.2 成员函数的实现 2.3 位图模拟实现完整代码 三. 关于位图处理海量数据的几个面试题 一. 什么是位图 1.1 海量数据处理问题 问题:假设有30亿个不重复的…

QT 学习笔记1 创建一个简单的cmd窗口界面

QT creator最大的特点是把界面和逻辑分开了 视频: 3、开发工具-QtCreator 目录 0、新建一个应用项目的步骤 一、设计相关: 1、控件 布局 Layouts 垫子 Spacers ​编辑 按钮 Buttons 单元视图 Item Views(Model-Based) 单元控件 Item Widgets(…

2023年美、英仍是最受欢迎的留学目标国家,硕士占比76%

2023年申请出国留学的时间已经不远了,要想顺利实现留学梦想,希望你能够把握好以下几个要点: 首先,要清楚自己的留学目标,要考虑到自己的学习能力、英语水平、专业设置、学费等因素,以便挑选一个最合适的国…

startActivityForResult被标记为废弃?Activity Result API闪亮登场!

本文已同步发表于我的微信公众号,搜索 代码说 即可关注,欢迎与我沟通交流。 文章目录 startActivityForResult()被标记为过时registerForActivityResult替代方案使用示例ActivityResultContract 场景自定义ActivityResultContract 源码浅析registerForAc…

(4.2)STM32中断系统

目录 1.中断基本概念 2.中断的意义 3.中断处理过程 4. 中断体系结构 5.NVIC 6.EXTI 1.中断基本概念 在处理器中,中断相当于对于突发事件的处理过程。 当遇到内部/外部的紧急事件需要处理时,暂时中止当前程序,转而去处理紧急事件, …

使用 ESP32 UWB DW3000进行测距和定位

什么是超宽带及其工作原理? UWB 是一种类似于蓝牙或 Wi-Fi 的短距离无线通信协议。它还使用无线电波进行通信并以非常高的频率运行。顾名思义,它还使用几 GHz 的宽频谱。可以将其想象成一种雷达,可以连续扫描整个房间并像激光束一样精确锁定物体以发现其位置并传输数据。 超…