Linux 安装 MySQL 8.0.26

1、MySQL 8.0.26 下载

官方网站下载 MySQL 8.0.26 安装包,下载地址:mysql8.0.26

在这里插入图片描述
本案例采用Linux 64位操作系统进行讲解,通过wget命令下载安装包。
使用df -lh命令查看,磁盘大小,尽量安装在比较大的磁盘下,防止空间不够使用。

[root@VM-0-4-centos home]# df -lh
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        3.9G     0  3.9G   0% /dev
tmpfs           3.9G   24K  3.9G   1% /dev/shm
tmpfs           3.9G  604K  3.9G   1% /run
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/vda1        50G  3.8G   44G   9% /
tmpfs           783M     0  783M   0% /run/user/0

通过上述命令可以看出根目录空间比较充足,那么就把安装包下载到home目录了,执行wget命令。

[root@VM-0-4-centos home]# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.26-linux-glibc2.12-x86_64.tar.xz

2、解压缩文件

解压 mysql-8.0.26-linux-glibc2.12-x86_64.tar.xz 文件,使用tar -xvf mysql-8.0.26-linux-glibc2.12-x86_64.tar.xz 命令。

[root@VM-0-4-centos home]# tar -xvf mysql-8.0.26-linux-glibc2.12-x86_64.tar.xz  
mysql-8.0.26-linux-glibc2.12-x86_64/bin/
mysql-8.0.26-linux-glibc2.12-x86_64/bin/myisam_ftdump
mysql-8.0.26-linux-glibc2.12-x86_64/bin/myisamchk
mysql-8.0.26-linux-glibc2.12-x86_64/bin/myisamlog
mysql-8.0.26-linux-glibc2.12-x86_64/bin/myisampack
mysql-8.0.26-linux-glibc2.12-x86_64/bin/mysql
....
mysql-8.0.26-linux-glibc2.12-x86_64/share/
mysql-8.0.26-linux-glibc2.12-x86_64/share/install_rewriter.sql
mysql-8.0.26-linux-glibc2.12-x86_64/share/uninstall_rewriter.sql

3、移动文件

将压缩包移动到usr/local目录下,并重命名文件为mysql,使用mv /home/mysql-8.0.26-linux-glibc2.12-x86_64 /usr/local/mysql命令。

[root@VM-0-4-centos home]# mv mysql-8.0.26-linux-glibc2.12-x86_64 /usr/local/mysql
[root@VM-0-4-centos home]# cd /usr/local/mysql/
[root@VM-0-4-centos mysql]# ls
bin  docs  include  lib  LICENSE  man  README  share  support-files
[root@VM-0-4-centos mysql]# cd ..
[root@VM-0-4-centos local]# ls
bin  etc  games  include  lib  lib64  libexec  mysql  qcloud  sbin  share  src  yd.socket.server
[root@VM-0-4-centos local]#

4、创建数据存放目录

在mysql根目录下新建一个目录data,主要用于存放数据库数据文件,使用mkdir data命令。

[root@VM-0-4-centos local]# cd mysql/
[root@VM-0-4-centos mysql]# mkdir data
[root@VM-0-4-centos mysql]# ls
bin  data  docs  include  lib  LICENSE  man  README  share  support-files
[root@VM-0-4-centos mysql]#

5、创建用户组和用户

创建mysql用户组和mysql用户,使用groupadd mysql和useradd -g mysql mysql命令。

[root@VM-0-4-centos mysql]# groupadd mysql
[root@VM-0-4-centos mysql]# useradd -g mysql mysql

6、改变mysql目录权限

修改mysql目录权限,可以使用chown -R mysql.mysql /usr/local/mysql/命令。
在这里插入图片描述
修改mysql目录权限也可以通过chown -R mysql .和chgrp -R mysql .两个命令。注意:这两个命令都需要执行的,还有那个点不要忽视掉。

7、数据库初始化

数据库初始化./bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize命令,得到临时密码。

[root@VM-0-2-centos mysql]# ./bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize
2022-01-16T07:32:18.729960Z 0 [Warning] [MY-011070] [Server] 'Disabling symbolic links using --skip-symbolic-links (or equivalent) is the default. Consider not using this option as it' is deprecated and will be removed in a future release.
2022-01-16T07:32:18.729960Z 0 [System] [MY-013169] [Server] /usr/local/mysql/bin/mysqld (mysqld 8.0.26) initializing of server in progress as process 7691
2022-01-16T07:32:18.740975Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2022-01-16T07:32:19.800287Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2022-01-16T07:32:21.721672Z 0 [Warning] [MY-013746] [Server] A deprecated TLS version TLSv1 is enabled for channel mysql_main
2022-01-16T07:32:21.722106Z 0 [Warning] [MY-013746] [Server] A deprecated TLS version TLSv1.1 is enabled for channel mysql_main
2022-01-16T07:32:21.787669Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: :e0l?pC>Z%R.

需要注意:记录一下mysql数据库的临时密码:e0l?pC>Z%R.,后面安装步骤是需要使用的,否则需要重新安装数据库或其他方式获取密码,此处问题省略。

8、修改my.cnf文件

修改my.cnf文件,使用vim /etc/my.cnf命令。

[mysqld]
    basedir = /usr/local/mysql
    datadir = /usr/local/mysql/data
    socket = /usr/local/mysql/mysql.sock
    character-set-server=utf8
    port = 3306
    sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
 [client]
    socket = /usr/local/mysql/mysql.sock
    default-character-set=utf8
#[mysqld]
#datadir=/var/lib/mysql
#socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
#symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
 
#[mysqld_safe]
#log-error=/var/log/mariadb/mariadb.log
#pid-file=/var/run/mariadb/mariadb.pid
 
#
# include all files from the config directory
#
#!includedir /etc/my.cnf.d

直接将上述配置内容复制到my.cnf文件中,或者自行修改,然后执行:wq命令,保存并退出。

9、创建mysql服务

1)将mysql.server启动文件复制到/etc/init.d目录,使用cp -a /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld命令。

2)赋予权限,使用chmod +x /etc/rc.d/init.d/mysqld命令;

3)使用chkconfig --add mysqld创建mysql服务。

[root@VM-0-4-centos mysql]# cp -a /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@VM-0-4-centos mysql]# chmod +x /etc/rc.d/init.d/mysqld 
[root@VM-0-4-centos mysql]# chkconfig --add mysqld

检查mysql服务是否生效,使用chkconfig --list mysqld命令。

[root@VM-0-4-centos mysql]# chkconfig  --list mysqld
 
Note: This output shows SysV services only and does not include native
      systemd services. SysV configuration data might be overridden by native
      systemd configuration.
 
      If you want to list systemd services use 'systemctl list-unit-files'.
      To see services enabled on particular target use
      'systemctl list-dependencies [target]'.
 
mysqld          0:off   1:off   2:on    3:on    4:on    5:on    6:off

10、配置全局环境变量

编辑/etc/profile文件,使用vim /etc/profile命令,在profile文件中添加如下两行配置,使用:wq命令保存后退出。

export PATH=$PATH:/usr/local/mysql/bin:/usr/local/mysql/lib
export PATH

在这里插入图片描述
设置环境变量立即生效使用source /etc/profile命令。

[root@VM-0-4-centos ~]# source /etc/profile
[root@VM-0-4-centos ~]#

11、启动mysql服务

启动mysql服务,使用service mysql start命令;使用service mysql status命令,查看是否启动成功。

[root@VM-0-4-centos ~]# service mysql start
Redirecting to /bin/systemctl start mysql.service
[root@VM-0-4-centos ~]# service mysql status
Redirecting to /bin/systemctl status mysql.service
● mysqld.service - LSB: start and stop MySQL
   Loaded: loaded (/etc/rc.d/init.d/mysqld; bad; vendor preset: disabled)
   Active: active (running) since Sun 2022-01-16 17:17:55 CST; 8s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 27231 ExecStart=/etc/rc.d/init.d/mysqld start (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/mysqld.service
           ├─27242 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/VM-0-4-centos.pid
           └─27408 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=VM-0-4-cent...
 
Jan 16 17:17:54 VM-0-4-centos systemd[1]: Starting LSB: start and stop MySQL...
Jan 16 17:17:54 VM-0-4-centos mysqld[27231]: Starting MySQL.Logging to '/usr/local/mysql/data/VM-0-4-centos.err'.
Jan 16 17:17:55 VM-0-4-centos mysqld[27231]: SUCCESS!
Jan 16 17:17:55 VM-0-4-centos systemd[1]: Started LSB: start and stop MySQL.

12、登录mysql修改密码

登录mysql数据库,使用mysql -uroot -p密码命令,临时密码是:e0l?pC>Z%R.

[root@VM-0-4-centos ~]# mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 13
Server version: 8.0.26
 
Copyright (c) 2000, 2021, Oracle and/or its affiliates.
 
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临时密码,也就是将第七步数据库初始化生成的临时密码修改成自己需要设置的密码。
修改mysql数据库密码,使用ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘123456’;命令。

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
Query OK, 0 rows affected (0.01 sec)
mysql>

注意:此处123456修改为自己的需要密码即可。

13、设置mysql远程登录

1)切换数据库,使用use mysql;命令。

2)修改mysql库中host值,使用update user set host=‘%’ where user=‘root’ limit 1;命令。

3)刷新mysql权限,使用flush privileges;命令。

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> update user set host='%' where user='root' limit 1;
Query OK, 1 row affected (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 0
 
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
 
mysql>

14、mysql客户端连接数据库

客户端连接mysql数据库,连接名(自定义名称)、主机(IP)、端口号及用户名和密码,点击测试连接按钮,显示连接成功即可。
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

3Dmax模型渲染时的常见问题与解决方法

3Dmax是一个广为人知的三维建模工具,它在建筑、电影制作和游戏开发等多个领域都有着广泛的应用。尽管如此,在进行3Dmax模型渲染的过程中,用户可能会遇到一些常见问题。本文将提供这些常见问题的解决方案,以帮助用户提高渲染效率和…

是真的吗,不会代码也能开发一款AI应用?GPTs让人梦想成真

去年,11月6日,Open AI进行了一场开发者大会,在这场开发者大会中,Open AI推出了最新的GPTS。 对于这样的一个新鲜事物,心中难免有很多疑问,比如: 什么是GPTs? 如何才能使用GPTs&…

Java鲜花下单预约系统源码小程序源码

让美好触手可及 🌸一、开启鲜花新篇章 在繁忙的都市生活中,我们总是渴望那一抹清新与美好。鲜花,作为大自然的馈赠,总能给我们带来无尽的惊喜与愉悦。但你是否曾因为工作繁忙、时间紧张而错过了亲自挑选鲜花的机会?今…

程序的调试技术,设置断点

断点(break point)是指在代码中指定位置,当程序运行到此位置时变中断下来,并让开发者可查看此时各变量的值。因断点中断的程序并没有结束,可以选择继续执行。 在程序的调试过程中,设置断点是一个很有用的分…

怎么把图片转成jpg格式?其他格式快速转换成jpg图片的方法

怎么把图片在线转jpg?jpg格式的图片是现在使用最广泛的一种图片格式,一般在网上传图时都会需要使用jpg格式的图片,那么当手中的图片不满足使用的要求时,如何操作能够快速将其他格式的图片转换jpg格式呢? 下面来教大家…

基于Boost和平均电流控制方法的APFC电路设计

通过学习无线充电相关知识,为更快熟悉APFC工作原理,通过实验得以掌握 技术要求: 1)输入电压:AC 85V~265V; 2)输出电压:400V1%; 3)输出额定电流…

uniapp生成微信小程序二维码

文章目录 一、获取不限制的小程序码1、第一步:需要先获取ACCESS_TOKEN2、第二步:获取微信小程序二维码 二、获取小程序码1、第一步:需要先获取ACCESS_TOKEN2、第二步:获取微信小程序二维码 三、扫普通链接二维码打开小程序1、协议…

一个完整的Flutter应用

本文基于以下链接进行细节补充15.2 Flutter APP代码结构 | 《Flutter实战第二版》 代码结构 我们先来创建一个全新的Flutter工程,命名为"github_client_app" 我们在项目根目录下分别创建imgs和fonts、jsons、l10n文件夹 工程目录如下: 在l…

Python终于可以在线编程了!

优势 在线编程,轻量级,无需安装Python环境。 在线编程优势: 无需安装和配置环境: 在线编程平台不需要用户在本地安装任何软件或配置开发环境。这对初学者和那些希望快速上手进行编程的人非常有利。跨平台兼容性: 这些平台可以在任何具有互联网…

教程:在 Kubernetes 集群上部署 WordPress 网站

WordPress 是专为每个人设计的开源软件,强调创建网站、博客或应用程序的可访问性、性能、安全性和易用性。WordPress 是一个基于 PHP 的内容管理系统(CMS),使用 MySQL 作为数据存储,目前很多网站、电商独立站、个人博客…

构建基于LLM的高效知识库问答系统:MaxKB一站式开源解决方案探析

随着人工智能技术的飞速发展,尤其是大型语言模型(LLMs)的广泛应用,知识管理与交互进入了新的纪元。今天,我们将深入探讨一个创新的开源项目——MaxKB,这是一个集成了最新技术、旨在提供一站式解决方案的知识库问答系统。MaxKB以其开箱即用、高度可定制性以及对多种主流大…

Linux-引导过程与服务控制

目录 一、Linux操作系统引导过程 1、引导过程总览 2、引导过程详解 2.1、开机自检(BIOS) 2.2、 MBR引导 2.3、GRUB菜单 2.4、加载内核(kernel) 2.5、init进程初始化 3、系统初始化进程 3.1、Systemd单元类型 3.2、运行级别所对应的 Systemd 目…

参加六西格玛绿带培训是投资未来,还是花冤枉钱?

是否值得花费资金参加六西格玛绿带培训,取决于多个因素。 从积极的方面来看,参加六西格玛绿带培训具有以下潜在价值: 1. 提升专业技能:使您掌握一套系统的问题解决方法和流程改进工具,有助于在工作中更高效地解决复杂…

学会python——在excel中写入数据(python实例十三)

目录 1.认识Python 2.环境与工具 2.1 python环境 2.2 Visual Studio Code编译 3 .想Excel中写入数据 3.1 代码构思 3.2 代码实例 3.3 运行结果 4.总结 1.认识Python Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。 Python 的设计具有很强的…

超越规模的冒险之旅:引导人工智能价值对齐

在茫茫技术之林中,人工智能凭借大模型占据了重要地位。人们已经不再局限于人机对弈和AI识图,开始探索那些能够模仿人类思考的机器。无论是日常聊天、文本写作,还是[在完美的提示词引导下创作出惊艳的诗歌],我们不得不承认AI工具已…

Linux基础 - 使用 ssh 服务管理远程主机(window linux vscode)

目录 零. 简介 一. 打开linux shh 二. window连接linux 三. linux连接linux 四. VSCode远程 零. 简介 SSH(Secure Shell)服务是一种网络协议,主要用于在不安全的网络环境中为计算机之间的通信提供安全的加密连接。 SSH 服务具有以下重要…

Linux系统查询磁盘空间大小(df、du)

df命令是linux系统以磁盘分区为单位查看文件系统,可以加上参数查看磁盘剩余空间信息, 命令格式:df -hl 显示格式为: Filesystem(文件系统) Size(容量) Used(已用) Avail(可用) Use%(已用%) Mounted on(挂载点) 命令使用详细介绍 …

《数据勒索防范手册(1.0版)》

当前,数据勒索攻击已成为全球最严重的数据安全威胁之一攻击方式呈现 APT 化、平台化、多重化、AI驱动化等发展趋势:据统计,近年来针对制造业、公共事业、卫生保健、电力、交通、能源等领域的勒索攻击显著增加。随着云计算、边缘计算等技术的不断发展&…

文华财经盘立方博易大师主图指标公式大全源码均线

文华财经盘立方博易大师主图指标公式大全源码均线: N:3; EMA25:EMA(C,25),COLORRED,LINETHICK2; EMA70:EMA(C,70),COLORGREEN,LINETHICK2; EMA450:EMA(C,450),COLORYELLOW,LINETHICK2; CONDA1:EMA25>EMA70&&C>HV(H,6)&&C>EMA450&…

LSH算法:高效相似性搜索的原理与Python实现II

局部敏感哈希(LSH)是一种高效的近似相似性搜索技术,广泛应用于需要处理大规模数据集的场景。在当今数据驱动的世界中,高效的相似性搜索算法对于维持业务运营至关重要,它们是许多顶尖公司技术堆栈的核心。 相似性搜索面…