Centos8安装mysql8的详细过程(免安装版/或者二进制包方式安装)

以下是CentOS 8安装MySQL 8的详细过程。

准备工作

在开始安装之前,需要在CentOS 8上安装一些依赖项以支持MySQL 8。在终端中运行以下命令:

sudo dnf install wget curl vim
sudo dnf install libaio
sudo dnf install numactl

这些命令将安装wget、curl和vim等软件包,以及numactl和libaio等MySQL 8依赖项。

下载MySQL 8

在官方MySQL 8下载页面中,选择“MySQL Community Server”版本。选择版本后,可以直接下载二进制包安装,不需要使用.rpm文件进行安装。我们选择的是“mysql-8.0.27-linux-glibc2.17-x86_64.tar.xz”这个版本的二进制包进行安装。

解压MySQL 8

将下载的MySQL 8 tar包解压到你希望安装的目录中。比如,可以将解压后的文件夹命名为“mysql”,并将其放置在“/ usr / local /”目录下。

sudo mkdir /usr/local/mysql
sudo tar -xf mysql-8.0.27-linux-glibc2.17-x86_64.tar.xz -C /usr/local/mysql --strip-components=1

解压后,MySQL包的文件将会放置在“/ usr / local / mysql”目录下。请注意,用于安装的用户名是您系统上的现有用户,而非MySQL选项中预设的用户名。

MySQL 8配置

MySQL 8默认情况下未使用配置文件,因此需要手动创建MySQL选项文件并对其进行修改。 创建“/etc/my.cnf”文件并使用vim进行编辑:

sudo vim /etc/my.cnf

添加以下内容到my.cnf文件中:

[mysqld]
# Set the server character set
character-set-server = utf8

# Set utf8 as the default client character set
collation-server = utf8_general_ci

# Set utft8 as the default character set
default_authentication_plugin = mysql_native_password

# Enable log error
general_log_file = /var/log/mysql/mysql.log
general_log = 1

# Disable the performance schema
performance_schema = OFF

# Temporary tables dir
tmpdir = /mnt/data/mysql_tmp_dir

# Max Connections
max_connections = 100

# log query time
long_query_time = 3

# Slow query
slow_query_log = OFF

# We do not allow root login
skip-networking

请注意,在这个示例中,上传到服务器的经常使用的脚本存储在“/mnt/data”目录中,因此临时表将具有一个自己的文件夹。

初始化MySQL数据库

若要使用这个MySQL,根据以下数据,初始化MySQL数据库并设置管理员密码。 在命令行中输入以下命令启动MySQL Server:

cd /usr/local/mysql/bin/
sudo ./mysqld --initialize-insecure --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
sudo ./mysqld_safe --skip-grant-tables &

--initialize-insecure: 生成初始密码,但不进行加密,开启这个选项后,MySQL的Root用户则没有密码;

--basedir:指定Base Directory

--datadir:指定data Directory

此时MySQL安装成功,一些需要注意的地方有以下两点:

  • 在安装的时候需要先执行./mysqld --initialize-insecure 这个命令,然后启动MySQL服务。当我们第一次登录MySQL时,会看到MySQL会自动要求我们修改密码,具体可以参考下面的命令:
mysql -u root -p
修改密码
alter user 'root'@'localhost' identified by '123456';

示例说明

下面是两个实例的说明。

实例1: 查看MySQL版本

在终端中执行以下命令,查看MySQL的版本:

mysql -V

结果应该类似于这样:

mysql  Ver 8.0.27 for Linux on x86_64 (MySQL Community Server - GPL)

实例2: 创建一个新的MySQL用户

要创建一个新的MySQL用户,请执行以下命令:

sudo mysql -u root -p 

输入刚才修改的密码

在MySQL终端中创建一个新用户可以使用以下代码:

mysql> CREATE USER 'newuser'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

替换newuser和password为你要创建的用户名和密码。

然后为该用户授予适当的权限:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'localhost';

以上就是CentOS 8安装MySQL 8的详细过程。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Centos8安装mysql8的详细过程(免安装版/或者二进制包方式安装) - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • 使用ODBC数据库管理Serv-U的FTP用户及相关ASP编程[附源码示例下载]

    使用ODBC数据库管理Serv-U的FTP用户及相关ASP编程,是一篇关于如何使用ODBC数据库来管理Serv-U FTP用户的技术文章。这篇文章直接面向开发人员,其中包含多个代码块和示例说明,方便开发人员理解和应用。 以下是完整的攻略: 简介 Serv-U是一个流行的FTP服务器,提供了无数的功能和配置选项。但是,对于需要管理大量FTP用户的场景,手动管理…

    database 2023年5月22日
    00
  • SQL Server 2000中的触发器使用

    下面给出SQL Server 2000中的触发器使用的完整攻略。 什么是触发器 触发器是一段程序代码,当满足某个条件时就会被触发执行。在SQL Server 2000数据库中,触发器可以自动执行一系列操作,例如:在表上插入、更新或删除行数据时触发某个程序。触发器可以帮助我们在数据库操作时实现数据的约束和完整性,以及自动化某些操作。 创建触发器 SQL Ser…

    database 2023年5月21日
    00
  • MySQL之Join语句执行流程是什么

    本文小编为大家详细介绍“MySQL之Join语句执行流程是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“MySQL之Join语句执行流程是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。 Join语句执行流程 在实际生产中,关于 join 语句使用的问题,一般会集中在以下两类: 不让使用 join,使用 join 有什么问…

    MySQL 2023年4月11日
    00
  • 如何在Python中使用SQLAlchemy ORM操作数据库?

    如何在Python中使用SQLAlchemy ORM操作数据库? SQLAlchemy是一个Python ORM(对象关系映射)库,它提供了一种简单的方式来操作关系型数据库。使用SQLAlchemy,我们可以使用Python代码来创建、读取、更新删除关系数据库中的数据。以下是如何在Python中使用SQLAlchemy ORM操作的完整使用攻略,包括连接数据…

    python 2023年5月12日
    00
  • golang中定时器cpu使用率高的现象详析

    Golang中定时器CPU使用率高的现象详析 背景 在 Golang 中,使用 time 包中的定时器时,我们发现系统的 CPU 使用率非常高,这使得我们担心系统的稳定性和资源的浪费。本文将详细讲解在 Golang 中使用定时器导致 CPU 使用率高的原因,并介绍一些解决方案。 原因 在 Golang 中使用定时器时,我们通常会使用 time.Tick() …

    database 2023年5月22日
    00
  • Linux下的Oracle启动脚本及其开机自启动

    在Linux下,Oracle启动脚本是通过init.d脚本实现的,通过配置开机自启动,可以在服务器启动时自动启动Oracle数据库。 编写Oracle启动脚本 在/etc/init.d/目录下创建名为oracle的脚本文件: sudo vi /etc/init.d/oracle 在文件中输入以下脚本: “` !/bin/bash oracle: Start…

    database 2023年5月22日
    00
  • 制作PHP的RPM包详解及实例

    制作PHP的RPM包详解及实例 简介 在Linux系统中,RPM(RedHat Package Manager)是一种常用的软件包管理器。在CentOS等常用的Linux发行版中,我们可以使用RPM来安装和管理软件包。对于Web开发来说,PHP是一个非常常用的开发语言,因此制作PHP的RPM包对于服务器管理员来说是非常有必要的。本文将对制作PHP的RPM包进…

    database 2023年5月22日
    00
  • ORACLE多条件统计查询的简单方法

    下面我来为您详细讲解“ORACLE多条件统计查询的简单方法”的完整攻略。 前言 对于多条件统计查询,通常我们会使用group by语句实现。然而,如果条件数量较多,group by语句就会变得臃肿且不易维护。本文将介绍一种简单的方法,通过使用CASE语句实现多条件统计查询。 方法 假设我们有一个订单表order,字段包括order_id, customer_…

    database 2023年5月21日
    00
合作推广
合作推广
分享本页
返回顶部