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

yizhihongxing

以下是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日

相关文章

  • 几个比较重要的MySQL变量

    下面是关于几个比较重要的MySQL变量的详细讲解: 1. max_connections max_connections是MySQL的一个系统变量,它指定服务器上允许创建的最大连接数。默认情况下,这个值是100。如果您的应用程序需要处理大量的连接,这个值就可能需要增大。 设置max_connections变量 要设置max_connections变量,可以使…

    database 2023年5月22日
    00
  • 浅谈12 条用于 Linux 的 MySQL/MariaDB 安全最佳实践

    下面是“浅谈12 条用于 Linux 的 MySQL/MariaDB 安全最佳实践”的完整攻略: 1. 设置 root 密码 在安装 MySQL/MariaDB 时,必须为 root 用户设置一个密码。这将避免未经授权的用户危害数据库。 2. 创建新用户 不要使用 root 用户来登录数据库。相反,应该创建一个新用户,授予该用户所需的最低权限。这将增加安全性…

    database 2023年5月22日
    00
  • MySQL 中如何归档数据的实现方法

    MySQL 中归档数据有多种实现方法,这要根据具体的业务需求、数据量大小、访问频率等因素来选择。下面分别介绍两种常见的归档方法。 1. 利用分区表进行归档 分区表最大的特点是可以按照某个特定的列进行分区,使得数据更容易管理。利用分区表进行归档数据,可以按照时间为分区的方式。比如将一年内的数据存储在一个分区中,然后过一年后将该分区的数据归档到历史数据表中。可以…

    database 2023年5月22日
    00
  • SQL数据库十四种案例介绍

    SQL数据库十四种案例介绍 简介 本文将详细介绍SQL数据库的十四种案例,包括基本查询、聚合查询、多表连接查询、子查询等多种常用查询方式,帮助初学者理解SQL查询的基本语法和实现方式。 基本查询 基本查询是SQL查询的入门级别,其语法简单易懂,是初学者学习SQL查询的必备内容。基本查询语法如下: SELECT column1, column2, … FR…

    database 2023年5月19日
    00
  • Windows MySQL8.0安装出错解决方案(Start Server 失败)

    1、先删除之前安装出错的MySQL cmd—->切换到C:\Program Files\MySQL\MySQL Server 8.0\bin(mysql默认安装路径) 输入命令:mysqld –remove mysql 再输入命令:mysqld –remove mysql80   2、初始化设置 输入:mysqld –initialize-i…

    MySQL 2023年4月12日
    00
  • Have 子句和 Group by 子句的区别

    Have子句和Group by子句是SQL中常用的两个关键字,都用于对数据进行分组处理,但是它们在实现方式和处理结果上存在一些区别。 Have子句 Have子句是指在查询语句中使用特定的条件过滤结果,类似于WHERE子句。但是,Have子句通常是针对分组结果而言的,它是在Group by子句之后执行的,而非在之前。 在分组完成后,可能存在一些不符合条件的分组…

    database 2023年3月27日
    00
  • MySQL和Redis的数据一致性问题

    MySQL和Redis都是常用的数据库软件,它们在业务开发中常常被同时使用。而在使用中,我们需要解决MySQL和Redis之间数据一致性的问题。这里提供一些解决数据一致性问题的完整攻略: 1、简述MySQL和Redis的数据一致性问题 MySQL和Redis作为两个不同的数据库,它们之间的数据交互是不可避免的。在实际开发中,我们可能需要在Redis中缓存部分…

    database 2023年5月22日
    00
  • mysql开启主从复制

    主数据库配置:vim /etc/my.cnf server_id=146 #一般设置ip最后一位 log-bin=mysql-bin #开启bin-log binlog_do_db=test #生成test数据库binlog_do_db=sss #生成sss数据库binlog_ignore_db=sss #忽略数据库#查看配置是否生效 show VARIAB…

    MySQL 2023年4月13日
    00
合作推广
合作推广
分享本页
返回顶部