社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  DATABASE

在CentOS 7上安装 MySQL 保姆级教程

Github喵 • 2 年前 • 281 次点击  

推荐阅读:终于来了,【第三期】 彭涛Python 爬虫特训营!!

MySQL 关系数据库管理系统的流行很容易将其归类为开源应用程序。另一方面,它在 Oracle 下的存在和控制并没有完全归类为开源软件。想要从其免费功能中受益的用户可以选择使用 MySQL 社区版。此外,想要无限制访问其所有特性和功能的用户可以订阅 MySQL 企业版。

先决条件

在继续本文之前,你需要满足一下条件。

  • 一个正在运行的 CentOS 7 Linux 操作系统环境
  • 在 CentOS 7 Linux 操作系统上成为 Sudo 用户
  • 访问 CentOS 7 命令行实用程序(转到菜单 > 应用程序 > 实用程序 > 终端)
  • 默认访问 CentOS 的 Yum 包管理器

CentOS 7 服务器上的 MySQL 安装

要在 CentOS 7 服务器环境上成功安装 MySQL,需要遵循三个重要步骤,包括:

  • MySQL数据库下载
  • MySQL安装和配置
  • MySQL状态检查

我们将详细分解每个步骤,以便你更好地动手安装。

MySQL数据库下载

MySQL 数据库需要几个下载和准备步骤。一般情况下,我们需要 root 访问权限和 SSH 服务器访问知识。由于本文涵盖了一些有关 MySQL 安装和设置的基本教程,因此你可以使用 CentOS 7 桌面环境或其服务器环境。

第一步是通过以下命令确保你的 CentOS 7 系统是最新的。

sudo yum update

更新的系统可以确保下载所需的 MySQL 数据库。然后可以轻松下载适用于 CentOS 7 的数据库版本(https://dev.mysql.com/downloads/repo/yum/)。在终端上运行以下命令。

sudo wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

上述下载应以确认消息结束,详细说明“.rpm”文件已成功保存在你的系统上。

这个下载的数据库是我们安装 MySQL 数据库应用程序的基础。下一步使用以下命令:

sudo rpm -Uvh mysql80-community-release-el7-3.noarch.rpm

等待系统终端提示你连续更新和安装 .rpm 数据库。

MySQL安装和配置

接下来是安装 MySQL Server。我们执行以下命令从系统终端使用 Yum 安装程序。

sudo yum install mysql-server

此命令脚本的执行将导致输出几个包列表,需要通过按键盘上的“ y ”后按回车键来确认它们的下载和安装。

MySQL 包下载安装确认

在下载和安装 MySQL 相关包的几个实例时,需要在终端上键入“ y ”来确认是否继续。最后在终端显示界面末尾的看到“Finished” 消息。随着最后一个命令的输出,意味着 MySQL 已经成功安装在你的系统上。

MySQL 启动和状态检查

现在已经在 CentOS 7 操作系统上安装了 MySQL,我们需要启动并检查它的状态,以确认安装正确。这些步骤将是否在 CentOS 7 系统上安装了完整无误的数据库应用程序。

在你的 CentOS 7 操作系统上成功安装 MySQL 并不意味着它将自动开始运行。你可以手动启动它,访问终端并运行以下命令:

sudo systemctl start mysqld

该命令没有任何响应,因为 MySQL 将在你的操作系统后台静默执行。但是,要检查 MySQL 的状态或了解一切是否正常,可以执行以下命令。

sudo systemctl status mysqld

类似于以下的输出应该告诉你 MySQL 配置的状态。

centos 7上的MySQL运行状态检查

如图所示,屏幕的绿色字体部分告诉我们 MySQL 安装处于活动状态并且运行良好。到了这里,说明我们已经在CentOS 7 桌面环境或服务器环境上成功安装和启动 MySQL。

CentOS 7 上的 MySQL 配置

如果你还是 MySQL 新手,学习一些简单的数据库设置命令不还是很有必要的。它节省了你在网上搜索相关内容的时间。我们将在此处一起学习的关于 MySQL 数据库命令。

更改数据库的 root 用户密码

你在 CentOS 7 上新安装的 MySQL 数据库应用程序与临时 root 密码相关联。此密码是在 MySQL 安装期间创建的。要查看或访问与系统关联的默认密码,请运行以下命令:

sudo grep 'password' /var/log/mysqld.log

出于安全考虑,你可能需要更改此密码,第一步是执行此命令:

sudo mysql_secure_installation

在出现的提示中,输入分配给你的临时密码,随后的弹出窗口将使你能够输入和重新输入新密码详细信息。

The existing password for the user account root has expired. Please set a new password.
New password:
Re-enter new password:

在设置 MySQL 数据库密码时,需要遵守一些规则,如密码需要 8-12 个字符长的,需要考虑在新密码中包含数字、小写字母、大写字母和特殊字符。

在更改数据库密码时,在屏幕上会遇到的几个说明,届时需要你在键盘上按“ y ”后继续运行,直到设置完成。

检查数据库的当前版本

检查 MySQL 数据库应用程序版本是检查安装无误的另一种方法。如下命令所示。

mysql -u root -p

输入之前创建的 root 密码,然后出现如下终端输出:

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 38
Server version: 8.0.23

Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.

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.

重置数据库的root密码

对于有重置数据库密码的需求的 MySQL 用户来说,该过程也比较简单。

首先,需要停止 MySQL 服务器。

sudo systemctl stop mysqld

通过以下命令在没有关联密码的情况下或在安全模式下重新启动 MySQL 数据库。

sudo mysqld_safe --skip-grant-tables

数据库应用程序可能无法启动或显示为挂起。在这种情况下,请按键盘上的Enter

以下命令将帮助你重新建立与 MySQL 数据库的根连接。

mysql -uroot

以下命令序列对更改 MySQL 用户的 root 密码有效。

USE MYSQL;
UPDATE USER SET PASSWORD=PASSWORD(“my_new_password”) WHERE USER=’root’;
FLUSH PRIVILEGES;
EXIT

将“my_new_password”替换为你希望更新的密码,同时遵守前面所说的密码规则。

为了使密码更改生效,我们需要运行以下命令重新启动 MySQL 服务器。

sudo systemctl start mysqld

至此新密码现已生效,你将需要在下一次 MySQL 会话登录期间使用它。

创建新数据库及其关联用户

现在你是 root 用户,你可以访问 MySQL 数据库所有功能。如果你是数据库管理员,你需要对你团队中的一些其他普通用户如何访问和使用设置数据库应用一些限制。

在这里,你有两个选择。你可以创建这些用户并将其放入新创建的数据库中,也可以维护相同的数据库并在自定义权限下创建新用户。要创建新数据库,你将使用以下命令。

CREATE DATABASE new_database_name

将“new_database_name”替换为你希望分配给数据库的名称。

以下命令创建一个具有指定密码的数据库用户。

CREATE USER 'new_username'@'localhost' IDENTIFIED BY 'new_password'

根据你的喜好编辑变量“new_username”和“new_password”。

要删除已创建的数据库用户,请使用以下命令。

DROP USER 'new_username'@'localhost'

管理数据库的用户权限

现在你有了一个用户和一个数据库,你可以管理该用户如何访问或与提到的数据库交互。以下命令将赋予用户所有数据库权限。

GRANT ALL PRIVILEGES ON newdb.* TO 'new_username'@'localhost'

与用户权限相关的其他命令包括:

  • SELECT: - 授予数据库用户读取权限。
  • DROP: - 用户可以删除已创建或现有的数据库表
  • INSERT: - 用户可以填充现有数据库表的行
  • CREATE: - 用户可以生成或添加额外的数据库表
  • DELETE: - 用户可以删除数据库表上的现有行
  • UPDATE: - 用户可以编辑数据库表上的现有行
  • GRANT OPTION: - root用户可以更改其他普通数据库用户的权限权限

如果希望用户创建新的或其他数据库用户,我们将按以下方式使用 GRANT OPTION。

GRANT CREATE ON new_database_name.* TO 'new_username'@'localhost'

我们还可以通过以下命令撤销授予上述用户的访问权限。

REVOKE permission_type ON new_database_name.* TO 'new_username'@'localhost'

你还可以确认与每个现有数据库用户关联的权限类型。

SHOW GRANTS new_username

如果你授予数据库用户的权限只是暂时的,如果数据库用户太多,你可能会面临一个一个撤销它们的困境。在这种情况下,你只需要一个命令即可撤销所有用户权限。

FLUSH PRIVILEGES

上述命令重置所有用户分配的权限。

访问其他数据库命令

如果你需要更多的数据库命令来管理 MySQL ,可以在 MySQL shell 上输入以下任一命令。

\H

或者

help


我们爬虫第三期来了,加入我们,学更实用,更值钱的 Python 技术!



  1. 从0到1系统掌握Python 技术(入门进阶)

  2. 2个企业实战项目,4大常用工具

  3. 掌握24种反爬策略手段,成为真正爬虫高手

  4. 能抓取市面上90%的网站

  5. 掌握主流爬虫技术,就业找工作 真正全方位帮助大家从0到1,从 Python 入门到进阶,转行找爬虫工作。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/150295
 
281 次点击