Centos7下安装和配置MySQL5.7.20的详细教程

yizhihongxing

下面是详细的“Centos7下安装和配置MySQL5.7.20的详细教程”。

1. 安装MySQL

1.1 下载MySQL软件包

从MySQL官方网站下载MySQL 5.7.20的版本压缩包,下载地址为 https://dev.mysql.com/downloads/mysql/5.7.html 。

建议下载“Generic Linux (Architecture Independent), Compressed TAR Archive”版本,该版本可在绝大多数Linux发行版下使用。

1.2 解压MySQL软件包

下载后解压缩MySQL压缩包到指定目录,例如:

tar -zxvf mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz -C /usr/local/

解压后将得到一个名为mysql-5.7.20-linux-glibc2.12-x86_64的文件夹。

1.3 创建MySQL数据目录和日志文件

MySQL需要一个数据目录和几个日志文件来工作。在安装前,需要创建这些必要的目录,例如:

mkdir -p /data/mysql/data
mkdir -p /usr/local/mysql/log
touch /usr/local/mysql/log/mysql_error.log

1.4 创建MySQL用户和用户组

创建MySQL用户和用户组,例如:

groupadd mysql
useradd -g mysql mysql

1.5 初始化MySQL

在解压后的MySQL目录下,进行初始化操作,例如:

cd /usr/local/mysql-5.7.20-linux-glibc2.12-x86_64
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql-5.7.20-linux-glibc2.12-x86_64 --datadir=/data/mysql/data

这个过程会生成一个随机密码,该密码可以在日志文件/usr/local/mysql/log/mysql_error.log中查看。

1.6 启动MySQL

通过命令启动MySQL服务,例如:

./bin/mysqld_safe --user=mysql &

1.7 设置MySQL密码

MySQL初始化完成后,需要修改超级管理员root的密码,例如:

./bin/mysql -uroot -p
Enter password:

接着执行以下SQL语句来设置密码:

UPDATE mysql.user SET Password=PASSWORD('newpassword') WHERE User='root';
FLUSH PRIVILEGES;

其中newpassword为新密码,可根据实际情况修改。

至此,MySQL安装和初始化完成。

2. 配置MySQL

2.1 配置MySQL字符集

打开MySQL配置文件/etc/my.cnf,将[mysqld][client]两个段下的default-character-set参数设置为utf8mb4,例如:

[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci

[client]
default-character-set=utf8mb4

保存并退出,重启MySQL服务。

示例:

sudo vi /etc/my.cnf # 进入vi编辑器
# 在[mysqld]和[client]下添加如上内容
:wq # 保存并退出
sudo systemctl restart mysqld # 重启MySQL服务

2.2 配置MySQL远程连接

默认情况下,MySQL只允许本地连接。若需要进行远程连接,则需要在MySQL配置文件中/etc/my.cnf添加以下内容:

[mysqld]
bind-address=0.0.0.0

在MySQL服务中启用远程访问,可以使用以下SQL语句:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
FLUSH PRIVILEGES;

其中password为对应的root用户的密码。

示例:

sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
# 在[mysqld]段下添加 bind-address=0.0.0.0
:wq # 保存并退出
sudo mysql -uroot -p
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'newpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;

至此,MySQL的配置完成。

示例

示例1:创建一个新用户并授予全部权限

GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
FLUSH PRIVILEGES;

其中newuser为要新建的用户名,password为该用户的密码。

示例2:创建一个新的数据库

登录MySQL后执行以下SQL语句来创建一个新的数据库:

CREATE DATABASE newdatabase;

其中newdatabase为数据库的名称。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Centos7下安装和配置MySQL5.7.20的详细教程 - Python技术站

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

相关文章

  • BT宝塔Linux服务器管理助手架设VPS面板(安装及初始设置应用)

    首先,让我们简单介绍一下BT宝塔,它是一个基于Linux系统的服务器管理面板,它提供了丰富的功能模块,使得服务器管理变得更加轻松和简便。在本篇文章中,我们将会介绍如何使用BT宝塔来架设VPS服务器,并进行初始设置和应用。 步骤一:选择VPS服务器 首先,我们需要选择一个VPS服务器。推荐购买一个使用CentOS或其他Linux操作系统的VPS服务器。在购买过…

    database 2023年5月22日
    00
  • Ubuntu16.04.5LTS安装SVN的过程

    下面我为您详细讲解“Ubuntu16.04.5LTS安装SVN的过程”的完整攻略。 安装SVN 在Ubuntu 16.04.5 LTS上安装SVN的过程分为两步: 第一步:更新软件源 首先,我们需要更新软件源以确保我们获取的软件包是最新的。在终端中执行以下命令: sudo apt-get update 第二步:安装SVN 安装SVN很简单,只需在终端中执行以…

    database 2023年5月22日
    00
  • DBMS和DSMS的区别

    DBMS和DSMS都是数据管理系统,但它们有一些关键的区别。下面我们将逐个讨论。 DBMS和DSMS的概念 数据库管理系统(DBMS) 数据库管理系统(DBMS)是一种软件系统,用于创建、管理和维护各种类型的数据库。DBMS通常具有多个组件,包括数据库引擎、查询优化器、数据字典、用户界面等。它们支持用于管理数据的各种操作,例如数据定义、数据操作和数据查询等。…

    database 2023年3月27日
    00
  • mysql中关键词exists的用法实例详解

    mysql中关键词exists的用法实例详解,步骤如下: 第一步:了解exists关键词的作用: exists是一个关键词,它的作用是判断一个子查询是否有数据,如果子查询有数据,exists返回true,否则返回false。 第二步:exists关键词的语法格式 以下是exists关键词的语法格式: SELECT column_name(s) FROM ta…

    database 2023年5月22日
    00
  • 图文并茂地讲解Mysql索引(index)

    下面我将为您详细讲解“图文并茂地讲解Mysql索引(index)”的完整攻略。 1. 什么是索引(index) 索引(index)是一种能够加快在数据库表中查找某列值的数据结构,它可以让数据库系统快速定位到包含查找值的行。在 MySQL 数据库中,主键(primary key index)就是一种特殊的索引。 2. 索引类型 MySQL 支持多种类型的索引,…

    database 2023年5月19日
    00
  • C++异常处理方式实例详解(超级详细!)

    C++异常处理方式实例详解(超级详细!) 异常处理方式简介 在C++中,当程序发生意外情况时,可以通过异常处理方式来进行处理。异常处理方式可以使程序在发生异常时,从当前执行流程中跳转到异常处理流程中去。 异常处理流程由 try/catch 语句块构成。try 语句块用于包含可能抛出异常的代码,而 catch 语句块则用于捕捉并处理异常,从而避免程序崩溃或未预…

    database 2023年5月21日
    00
  • MySQL备份恢复设计思路

    MySQL备份恢复设计思路 在每个MySQL实例中,数据备份和恢复都是极其重要的。MySQL的备份和恢复是DBA的常用工具。一个好的备份策略需要考虑很多因素,比如: 数据库的大小 业务的重要性 预算 恢复恢复点的要求 备份周期等。 下面是备份恢复的设计思路。 备份 备份可以分为以下几个步骤: 确认需要备份的数据,包含但不限于以下几个方面: 数据库的大小 数据…

    database 2023年5月19日
    00
  • MySQL <>和<=> 运算符介绍

    MySQL中的<>和<=>运算符都是用于比较两个值的大小关系,下面分别进行详细讲解。 MySQL <> 运算符 <> 运算符表示不等于,用于比较两个值是否不相等。其语法如下: value1 <> value2 其中,value1和value2分别为要比较的两个值。 例如,我们要比较两个数字5和6是否…

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