安装 MySQL,修改用户名、放通外部机器访问

news2024/9/23 7:27:30

Hello,好记性不如烂笔头~ 虽说不会经常部署 MySQL ( OS:当然了,这服务不是公司部署好等着用就好了吗~?)
但!作为程序员、能够随手、无卡顿的部署并使用一个新的数据库 / 数据库集群也算是基操了~ 好记性不如烂笔头,顺手记录了一下较新版本 v8.4.x MySQL 的部署过程。

准备:

  1. 物理机 1 台,我的操作系统是 CentOS 7;
  2. 本机,能够联通互联网,能够连通物理机。

1. 下载、安装

MySQL 官方 yum 源地址罗列在分发页:https://dev.mysql.com/downloads/ ,
下载页面
如果是 ubuntu,选择 MySQL APT Repository,如果是 OPENSUSE,选择 MySQL SUSE Repository。我的服务器是 CentOS 系统,选择 MySQL Yum Repository 就好了。
yum rpm

1.1 获取 rpm 下载地址

rpm 文件
选择 你的操作系统版本

1.2 安装

如果服务器可以直连互联网,直接 wget 就可以:

cd ~  # 下载到用户目录
wget  https://dev.mysql.com/get/mysql84-community-release-el7-1.noarch.rpm

如果服务器不能直接访问互联网,先下载到本地,然后 scp 拷贝过去:

scp ~/Downloads/mysql84-community-release-el7-1.noarch.rpm root@ 你的服务器 IP 地址:/root/

其次,使用 mysql yum 源安装:

cd ~  # 假定刚才的文件下载到你的用户目录
rpm -ivh mysql84-community-release-el7-1.noarch.rpm 
yum update
yum install mysql-server 

1.3 初始化、启动、验证安装

首先是修改权限:

chown -R mysql:mysql /var/lib/mysql/

然后是初始化 MySQL

mysqld --initialize

并启动 MySQL

systemctl start mysqld

一般情况下,systemctl start mysqld 是没有回显的:
在这里插入图片描述
如果遇到这个问题:
在这里插入图片描述
则需要检查权限修改是否成功,命令是 groups mysql,如果存在下述回显则无恙,
在这里插入图片描述
否则,需要酌情执行以下命令:

# 将 mysql 用户加入 mysql 用户组
usermod -a -G mysql mysql
# 修改 /var/lib/mysql/ 的归属权限
chown -R mysql:mysql /var/lib/mysql/
ls -alhs /var/lib/mysql/ # 检查权限归属

验证安装

systemctl status mysqld

在这里插入图片描述

mysqladmin --version

在这里插入图片描述

2. 修改 root 用户密码

首先邀请你手欠一下,输入 mysql 命令:
在这里插入图片描述
是的,MySQL 安装后会自动生成一个初始临时密码(实际上我们之前 “initialized” 过了)。但这个临时密码不会是我们日常使用的密码,一般需要修改成更高复杂度或更易记的密码。

2.1 找到密码

密码会出现在 error.log 文件中。首先查看 my.cnf 文件中日志路径:

cat /etc/my.cnf

在这里插入图片描述
路径是 /var/log/mysqld.log
使用 grep -i password /var/log/mysqld.log 命令,查看临时密码:

grep -i password /var/log/mysqld.log

在这里插入图片描述

2.2 修改密码

MySQL 8 修改密码方式和 5.x 版本的修改方式差挺多,首先是在服务器登录 mysql

mysql -u root -p

密码,使用刚才得到的临时密码。我的密码是 xKt2o#Dq***这个。
然后修改 root 密码。这里假定修改后的密码是 123456abc,那么命令就是:

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456abc';
FLUSH PRIVILEGES;

然后

exit

重新登陆,验证:
在这里插入图片描述

3. 外部访问

刚安装完的 MySQL,只能从服务器本机访问、无法从当前 ssh 过去的本机以 mysql 命令直接连接。这肯定很不方便使用嘛~ 这样调整:

3.1 修改数据库权限限制

首先是在服务器登录 mysql

mysql -u root -p

因为是刚安装完成,所以直接创建这个记录:

CREATE USER 'root'@'%' IDENTIFIED BY '123456abc';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

如果 CREATE USER 'root'@'%' IDENTIFIED BY '123456abc'; 提示异常,这条则替换成 ALTER USER 'root'@'%' IDENTIFIED BY '123456abc'; ,后面的命令不变。
其中,% 代表 任意 IP。保存后无需重启 mysqld 服务即生效(如果你非常想,就systemctl restart mysqld && system status mysqld)。

3.2 调整防火墙策略

如使用了 iptables, 则添加以下允许 3306 端口 TCP 链接规则:

# root 用户
iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
iptables-save

对于 ufw 防火墙:

ufw allow 3306/tcp

3.3 验证

在本机,连接服务器 mysql:

mysql -h 服务器IP -u root -p

成功如图:
在这里插入图片描述
应该不会失败 =v=,失败或遇到任何问题请留言;看到了就会回。

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

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

相关文章

【Blockly图形化积木编程二次开发学习笔记】1.工具箱的实现

文章目录 Blockly 版本选择上手 Blockly 版本选择 在【兰州大学】Blockly创意趣味编程【全36讲】主讲教师:崔向平 周庆国中提到,在18年6月份之前的版本中,可以通过安装依赖库的方式,打开开发者工具的离线版本,但是新版…

AWS CDN新增用户ip 地区 城市 响应头

1.需要自定义cdn缓存策略 这里的策略也是先复制之前的cdn策略哈 最后复制完了 全部新增这两条标头key CloudFront-Viewer-Country CloudFront-Viewer-City 2.然后新增cdn函数,应用你写的这个函数 function handler(event) {var request event.request;var respon…

Raw Socket(二)循环队列收发数据

完整代码在: 添加链接描述 其中tcp_handshake文件夹是实现TCP三次握手的demo。 完整代码参考: https://github.com/praveenkmurthy/Raw-Sockets 代码实现基于raw socket的TCP协议,发送http请求包并接收回包,…

JAVA中的Prim和Dijkstra问题详解

1.概念 Prim算法是一种计算加权无向图的最小生成树的算法。所谓最小生成树,是指一个图的子图,它包含图中所有的顶点,并且有保持图连通的最少的边,且所有边的权值之和最小。Prim算法的基本思想是从图中任意一个顶点开始&#xff0…

Go Web开发框架之Gin

💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

【香橙派AiPro】基于VGG16的火灾检测模型预测

目录 引言开发板介绍开发板使用准备工作工具文档 拨码开关镜像烧录连接开发板下载MobaXterm网线-SSH连接开发板设置WIFI连接WIFI-SSH连接开发板确定开发板IP方法 Vnc可视化WindowsiPad 开发工具安装 散热风扇基于VGG16的火灾检测模型预测数据集准备目录结构代码操作 安装宝塔最…

pico+unity手柄和摄像机控制初级设置

1、摄像头配置 摄像头模式、floor是追踪原点类型(将根据设备检测到地面的高度来计算追踪原点), Device 模式时,为通常理解的 Eye 模式,不会将根据设备检测到地面的高度来计算追踪原点 选择floor时,修改相…

UE4-初见虚幻引擎

一.创建自己的工程 1.启动 a.通过桌面双击图标来打开对应版本的虚幻引擎 b.通过EPIC启动器开启动虚幻引擎 2.选择或新建项目 ps:高版本虚幻编辑器可以打开低版本的虚幻项目,但是高版本虚幻的项目不可以由低版本的虚幻编辑器打开。 3. 选择要打开的项目 4.选择模版 选…

Linux桌面环境手动编译安装librime、librime-lua以及ibus-rime,提升中文输入法体验

Linux上的输入法有很多,大体都使用了Fcitx或者iBus作为输入法的引擎。相当于有了一个很不错的“地基”,你可以在这个“地基”上盖上自己的“小别墅”。而rime输入法,就是一个“毛坯别墅”,你可以在rime的基础上,再装修…

Win10+Docker环境使用YOLOv8 TensorRT推理加速

这一部分内容和WSL-Ubuntu20.04环境使用YOLOv8 TensorRT推理加速-CSDN博客 是基本相同的,有细微差别我也会在文中指出来。 1.TensorRTX下载 这里使用Wang-xinyu大佬维护的TensorRTX库来对YOLOv8进行推理加速的演示,顺便也验证一下前面环境配置的成果。 github地址:GitHub -…

windows10 背景如何变成护眼淡绿色

windows10 背景如何变成护眼淡绿色,office、输入窗口、网页前景、通讯软件光标全是变绿,保护色。 1、运行窗口输入 regedit 2、计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\DefaultColors\Standard 侧面的window名称数…

浏览器确定是否停留在当前Tab页面

切换页面时打印页面状态如图: 这里用到了visibilitychange事件。 document.addEventListener(visibilitychange,function(){console.log(document.visibilityState)})

Vue和Element UI 路由跳转

在Vue.js中,使用Vue Router可以方便地实现页面之间的路由跳转。Element UI是一个基于Vue 2.0的桌面端组件库,它本身并不直接提供路由跳转的功能,但你可以在使用Element UI的Vue项目中结合Vue Router来实现这一功能。 以下是一个基于Vue和Ele…

JavaScript进阶(四)---js解构

目录 一.定义: 二.类型: 1.数组解构: 1.1变量和值不匹配的情况 1.2多维数组 2.对象解构 3.对象数组解构 4.函数参数解构 5.扩展运算符 一.定义: JavaScript 中的解构(Destructuring)是一种语法糖&…

基于Ubuntu2310搭建openstack高可用集群B版

openstack-ha 环境初始化安装haproxy安装keepalived数据库集群高可用rabbitmq集群高可用memcache集群配置 keystone高可用glance高可用placement高可用nova高可用neutron高可用horizon高可用 本实验使用两台节点master和node配置haproxy高可用,keepliaved配置主备抢…

H5 Svg 半圆圆环占比图

效果图 主逻辑 /* 虚线长度 */ stroke-dasharray /* 偏移 */ stroke-dashoffset 代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge&qu…

sentinel网关限流配置及使用

sentinel控制台源码&#xff1a;https://download.csdn.net/download/yixin605691235/89543923 sentinel控制台jar包&#xff1a;https://download.csdn.net/download/yixin605691235/89543931 不同环境直接修改jar包中的application.yml文件中的nacos地址就可以了。 一、网关限…

socket功能定义和一般模型

1. socket的功能定义 socket是为了使两个应用程序间进行数据交换而存在的一种技术&#xff0c;不仅可以使同一个主机上两个应用程序间可以交换数据&#xff0c;而且可以使网络上的不同主机间上的应用程序间进行通信。 2. 图解socket的服务端/客户端模型

MySQL面试篇章——MySQL基础复习

文章目录 MySQL基本介绍MySQL数据类型数值类型字符串类型日期和时间类型ENUM和SET MySQL运算符算数运算符逻辑运算符比较运算符 MySQL常用函数字符串函数数值函数时间和日期函数聚合函数 MySQL完整性约束范式第一范式&#xff08;1NF&#xff09;第二范式&#xff08;2NF&#…

<数据集>钢铁缺陷检测数据集<目标检测>

数据集格式&#xff1a;VOCYOLO格式 图片数量&#xff1a;1800张 标注数量(xml文件个数)&#xff1a;1800 标注数量(txt文件个数)&#xff1a;1800 标注类别数&#xff1a;6 标注类别名称&#xff1a;[crazing, patches, inclusion, pitted_surface, rolled-in_scale, scr…