Linux系统下命令行安装MySQL5.7+详细步骤

news2024/12/20 22:40:41

一起学编程,让生活更随和!

如果你觉得是个同道中人,欢迎关注博主 gzh :【随和的皮蛋桑】。

专注于Java基础、进阶、面试以及计算机基础知识分享🐳。偶尔认知思考、日常水文🐌。

在这里插入图片描述


目录

    • 1、下载安装包
    • 2、检查是否已经安装了 MySQL 或者 MariaDB
    • 3、解压
    • 4、新建用户组和新增用户
    • 5、新建 data 目录,存放数据文件
    • 6、初始化安装 MySQL
    • 7、修改配置文件
    • 8、设置 MySQL 开机自启
    • 9、创建系统文件 my.cnf
    • 10、启动 MySQL 服务
    • 11、设置 MySQL 环境变量
    • 12、登录 mysql 服务
    • 13、修改 root 用户密码
    • 14、可视化工具 SQLyog 连接远程服务

1、下载安装包

进入 MySQL 官网:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
我选择的 Linux 操作系统版本的安装包,下载之后通过 XFTP 工具上传至 Linux 系统上,当然也可以通过命令直接下载:

# 在指定目录下
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.40-linux-glibc2.12-x86_64.tar.gz

2、检查是否已经安装了 MySQL 或者 MariaDB

检查MySQL

rpm -qa | grep mysql

有则卸载

rpm -e --nodeps mysql-xxxx

检查 MariaDB(一般是系统内置安装的,不卸载会有冲突)

rpm -qa | grep mariadb

有则卸载

rpm -qa | grep mariadb
# 或者
yum -y remove mariadb-libs-xxx

3、解压

tar -zxvf mysql-5.7.40-linux-glibc2.12-x86_64.tar.gz

重命名(友情提示:名字最好命名为 mysql),但是我不一样,我就命名为了 mysql5.7,不给你们刚,后面就后悔了(娘了个jio)

mv mysql-5.7.40-linux-glibc2.12-x86_64 mysql5.7

迁移路径(友情提示:路径最好迁移到 usr/local 下),哎但是我还不一样,我就迁移到了自建的 ./software 目录下,还不给你们刚,后面后悔了不得了(爹了个jio)

mv mysql5.7 ./software/

4、新建用户组和新增用户

# 新建属组
groupadd mysql
# 新增用户
useradd -r -g mysql mysql

进入 mysql5.7 目录下修改属组及属组用户和文件夹权限

# 修改 mysql5.7目录用户为刚刚新建的mysql组中的mysql用户
chown -R mysql:mysql mysql5.7
# 允许 mysql5.7文件夹及其包含的文件可以修改的权限
chmod -R 775 mysql5.7 

5、新建 data 目录,存放数据文件

[root@yixiujun mysql5.7]# mkdir data
[root@yixiujun mysql5.7]# ls
bin  data  docs  include  lib  LICENSE  man  README  share  support-files

6、初始化安装 MySQL

切记一定要在 mysql 安装目录下的 bin 目录执行

./mysqld --initialize --user=mysql --datadir=/software/mysql5.7/data --basedir=/software/mysql5.7
  • 代表数据保存路径
    --datadir=/software/mysql5.7/data
    
  • 代表服务安装路径
    --basedir=/software/mysql5.7
    

初始化完成之后,最下方会出现临时密码,记事本记录出现的临时密码,后续登录 mysql 会用到:

在这里插入图片描述

7、修改配置文件

第一步:修改 mysql.server

vim /software/mysql5.7/support-files/mysql.server

i 建输入修改自定义安装路径,然后按 esc 键,再 :wq 保存退出!

在这里插入图片描述

这里默认路径都是 usr/local/mysql ,也就是说默认安装路径为 usr/local ,默认安装目录名为 mysql ,而我在上述恰恰都修改了,你说呲花不呲花(妈了个巴子)

8、设置 MySQL 开机自启

首先将上述文件拷贝到系统文件下,也可以建立软连接,两种方式都可以:

# 直接拷贝
cp /software/mysql5.7/support-files/mysql.server /etc/init.d/mysqld
# 建立软连接
ln -s /software/mysql5.7/support-files/mysql.server /etc/init.d/mysql

查看是否成功:

[root@yixiujun /]# ll /etc/init.d/mysql
-rwxr-xr-x 1 root root 10616 Feb 22 23:25 /etc/init.d/mysql

设置为开机自启动

chkconfig --add mysqld

查看是否设置成功

在这里插入图片描述

9、创建系统文件 my.cnf

vim /etc/my.cnf

如果没有此文件,则会自动创建,然后编辑输入一下内容:

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 作用是禁止域名解析:在mysql的授权表中就不能使用主机名了,只能使用IP
skip-name-resolve
# 设置3306端口
port=3306
#设置远程访问ip
bind-address=0.0.0.0
# 设置mysql的安装目录
basedir=/software/mysql5.7
# 设置mysql数据库的数据的存放目录
datadir=/software/mysql5.7/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
#设置查询操作等不区分大小写
lower_case_table_names=1

然后 esc:wq 保存退出

设置文件权限:

chmod -R 775 /etc/my.cnf

10、启动 MySQL 服务

# 查看mysql服务状态
service mysql status
# 启动mysql服务
service mysql start
# 停止mysql服务
service mysql stop
# 重启mysql服务
service mysql restart

在这里插入图片描述

11、设置 MySQL 环境变量

vim /etc/profile

mysql 安装目录配置到环境变量中,在 /etc/profile 文件的末尾添加以下代码

export PATH=$PATH:/software/mysql5.7/bin

在这里插入图片描述
退出保存,使配置文件立即生效

source /etc/profile

这样就可以在任何目录,直接通过 mysql 命令登录 mysql 服务了

12、登录 mysql 服务

输入登录命令

mysql -uroot -p

在这里插入图片描述

13、修改 root 用户密码

修改密码

alter user 'root'@'localhost' identified by 'root';
# 或者
set password for root@localhost = password('123456')

刷新

flush privileges;

14、可视化工具 SQLyog 连接远程服务

前提开启防火墙指定端口号

# 永久开放 3306
firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 刷新
firewall-cmd --reload

如果客户端还连接不上,执行一下命令

grant all privileges on *.* to '用户名'@'%' identified by '密码'

在这里插入图片描述

妥了,大功告成,连接成功!!!

附:谁说 SQLyog low 我跟它急,我就喜欢 low 的!!!


在这里插入图片描述


一起学编程,让生活更随和!

如果你觉得是个同道中人,欢迎关注博主 gzh :【随和的皮蛋桑】。

专注于Java基础、进阶、面试以及计算机基础知识分享🐳。偶尔认知思考、日常水文🐌。

在这里插入图片描述


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

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

相关文章

STM32 使用microros与ROS2通信

本文主要介绍如何在STM32中使用microros与ROS2进行通信,在ROS1中标准的库是rosserial,在ROS2中则是microros,目前网上的资料也有一部分了,但是都没有提供完整可验证的demo,本文将根据提供的demo一步步给大家进行演示。1、首先如果你用的不是S…

JUC 之 线程局部变量 ThreadLocal

—— ThreadLocal 基本概念 ThreadLocal 提供线程局部变量。这些变量与正常的变量不同,因为每一个线程在访问 ThreadLocal 实例的时候(通过其get 或者 set 方法)都有自己的、独立初始化的变副本。ThreadLocal实例通常是类中的私有静态字段&…

104-JVM优化

JVM优化为什么要学习JVM优化: 1:深入地理解 Java 这门语言 我们常用的布尔型 Boolean,我们都知道它有两个值,true 和 false,但你们知道其实在运行时,Java 虚拟机是 没有布尔型 Boolean 这种类型的&#x…

@Autowired和@Resource的区别

文章目录1. Autowired和Resource的区别2. 一个接口多个实现类的处理2.1 注入时候报错情况2.2 使用Primary注解处理2.3 使用Qualifer注解处理2.4 根据业务情况动态的决定注入哪个serviceImpl1. Autowired和Resource的区别 Aurowired是根据type来匹配;Resource可以根…

数据结构栈的经典OJ题【leetcode最小栈问题大剖析】【leetcode有效的括号问题大剖析】

目录 0.前言 1.最小栈 1.1 原题展示 1.2 思路分析 1.2.1 场景引入 1.2.2 思路 1.3 代码实现 1.3.1 最小栈的删除 1.3.2 最小栈的插入 1.3.3 获取栈顶元素 1.3.4 获取当前栈的最小值 2. 有效的括号 0.前言 本篇博客已经把两个关于栈的OJ题分块,可以根据目…

【蓝牙mesh】Upper协议层介绍

【蓝牙mesh】Upper协议层介绍 Upper层简介 Upper协议层用于处理网络层以上的功能,包括设备的应用层数据、安全、群组等信息,是实现蓝牙mesh应用功能的关键协议之一。Upper层接收来自Access层的数据或者是Upper层自己生成的Control数据,并且将…

typing库

typing 库 引入 在日常代码编写中,由于python语言特性,不用像go等编译性语言一样,在定义函数时就规范参数和放回值的类型。 def demo(a, b):return "ab" 此时 a 和 b 可以传入任意类型参数毫无疑问,这一特性&#…

漏洞分析: WSO2 API Manager 任意文件上传、远程代码执行漏洞

漏洞描述 某些WSO2产品允许不受限制地上传文件,从而执行远程代码。以WSO2 API Manager 为例,它是一个完全开源的 API 管理平台。它支持API设计,API发布,生命周期管理,应用程序开发,API安全性,速…

【RockerMQ】001-RockerMQ 概述

【RockerMQ】001-RockerMQ 概述 文章目录【RockerMQ】001-RockerMQ 概述一、MQ 概述1、MQ 简介2、MQ 用途限流削峰异步解耦数据收集3、常见 MQ 产品概述对比4、MQ 常见协议二、RocketMQ 概述1、简介2、发展历史一、MQ 概述 1、MQ 简介 MQ,Message Queue&#xff0…

C++设计模式(22)——状态模式

亦称: State 意图 状态模式是一种行为设计模式, 让你能在一个对象的内部状态变化时改变其行为, 使其看上去就像改变了自身所属的类一样。 问题 状态模式与有限状态机 的概念紧密相关。 有限状态机。 其主要思想是程序在任意时刻仅可处…

【数据库】数据库的完整性

第五章 数据库完整性 数据库完整性 数据库的完整性是指数据的正确性和相容性 数据的正确性是指数据是符合现实世界语义,反映当前实际状况的数据的相容性是指数据库的同一对象在不同的关系中的数据是符合逻辑的 关系模型中有三类完整性约束:实体完整性…

中创公益|中创算力荣获“2022年度突出贡献爱心企业”

公益是什么?不啻微芒造炬成阳萤火虽微愿为其芒公益是持之以恒的努力,中创于2021年1月成立,同年4月中创就开始了公益活动,并对尖山村贫困儿童进行定期捐助。截至2023年,中创先后7次来到被捐助的贫困儿童家中&#xff0c…

【Git】IDEA整合Git详细步骤 — IDEA如何配置Git忽略文件

目录 一、IDEA整合Git 定位 Git 程序 —》IDEA配置Git程序 初始化本地库—》在idea中初始化项目,将项目纳入git管理 添加到暂存区 提交到本地库 方法一: 右键点击项目---> Git ----> Commit Directory 方法二: 点击绿色图标 √ 切换版本 创建分支 切换分…

chatgpt的原理 第一部分

前言 这两天,ChatGPT模型真可谓称得上是狂拽酷炫D炸天的存在了。一度登上了CSDN热搜,这对科技类话题是非常难的存在。不光是做人工智能、机器学习的人关注,而是大量的各行各业从业人员都来关注这个模型,真可谓空前盛世。 我赶紧把…

无人驾驶路径规划论文简要

A Review of Motion Planning Techniques for Automated Vehicles综述和分类0Motion Planning for Autonomous Driving with a Conformal Spatiotemporal Lattice从unstructured环境向structured环境的拓展,同时还从state lattice拓展到了spatiotemporal lattice从而…

【数据结构】双向链表的接口实现(附图解和源码)

双向链表的接口实现(附图解和源码) 文章目录双向链表的接口实现(附图解和源码)前言一、定义结构体二、接口实现(附图解源码)1.初始化双向链表2.开辟新空间3.尾插数据4.尾删数据5.打印双向链表中数据6.头插数…

含分布式电源的配电网日前两阶段优化调度模型(Matlab代码实现)

👨‍🎓个人主页:研学社的博客💥💥💞💞欢迎来到本博客❤️❤️💥💥🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密…

吃瓜教程笔记—Task04

神经网络 知识点 M-P神经元 模型如图所示:  神经元的工作机理:神经元接收来到n个其他神经元传递过来的输入信号,这些输入信号通过带权重的连接进行传递,神经元接收到的总输入值将与神经元的阈值进行比较,然后通过…

Tesla Autopilot,处理器和硬件

作者 | 初光 出品 | 车端 备注 | 转载请阅读文中版权声明 知圈 | 进“汽车电子与AutoSAR开发”群,请加微“cloud2sunshine” 总目录链接>> AutoSAR入门和实战系列总目录 Tesla MOdelS/X 中有 60 多个处理器。其他型号的处理器较少,但数量仍然不少…

Nginx 全局变量

变量说明$host 域名部分 www.baidu.com/1.php?a1&b2 $document_uri 当前请求中不包含参数的uri www.baidu.com/1.php?a1&b2 $uri和 $document_uri 一样$args 请求中的参数。 www.baidu.com/1.php?a1&b2 $args是a1&b2 $request_uri 请求的URI。 www.baidu.co…