在CentOS7系统上编译安装MySQL 5.7.13步骤详解

在CentOS7系统上编译安装MySQL 5.7.13步骤详解

MySQL是一种常见的关系型数据库管理系统,本文将解释如何在CentOS7系统上使用源代码编译方式安装MySQL 5.7.13。

步骤

1. 下载MySQL安装包

首先,我们需要从MySQL官网下载MySQL 5.7的源代码包。

# 下载MySQL源代码安装包
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.13.tar.gz

2. 解压MySQL安装包

解压缩下载的MySQL源代码包

#解压mysql源码包
tar -xzf mysql-5.7.13.tar.gz

3. 安装依赖包

在编译MySQL之前,必须安装一些必要的依赖项。

# 安装依赖包
yum install cmake make gcc-c++ bison-devel ncurses-devel -y

4. 创建MySQL安装目录

创建MySQL安装目录,并指定目录的属主和属组。

# 创建安装目录
mkdir /usr/local/mysql
# 设置目录所有者和组
chown -R mysql:mysql /usr/local/mysql/

5. 构建MySQL

创建MySQL构建目录,然后将MySQL源代码解压到此目录中。接着,进入该目录并运行以下命令来开始MySQL的构建:

# 创建构建目录
cd mysql-5.7.13
mkdir build
cd build

# 开始构建源码
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
 -DMYSQL_DATADIR=/usr/local/mysql/data \
 -DWITH_INNOBASE_STORAGE_ENGINE=1 \
 -DWITH_PARTITION_STORAGE_ENGINE=1 \
 -DWITH_FEDERATED_STORAGE_ENGINE=1 \
 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
 -DWITH_MYISAM_STORAGE_ENGINE=1 \
 -DENABLE_DTRACE=0 \
 -DCMAKE_CXX_FLAGS="-fno-omit-frame-pointer" \
 -DENABLED_LOCAL_INFILE=1 \
 -DWITH_EMBEDDED_SERVER=1 \
 -DDEFAULT_CHARSET=utf8 \
 -DDEFAULT_COLLATION=utf8_general_ci

# 将源代码编译为二进制文件
make
make install

6. 配置MySQL

在MySQL安装目录下创建一个my.cnf配置文件,然后将以下内容添加到该文件中:

[client]
socket=/tmp/mysql.sock

[mysqld]
# 以下内容可以根据需要自定义,但是必须包含这些核心选项。
user=mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock

# 添加以下内容以支持UTF-8字符集。
character-set-server=utf8
collation-server=utf8_general_ci

7. 启动MySQL

启动MySQL服务,并设置开启自启。

# 启动MySQL
/usr/local/mysql/bin/mysqld_safe --user=mysql &
# 设置mysqld自启动
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
chkconfig mysqld on

8. 建立MySQL数据

使用以下命令,登录MySQL:

/usr/local/mysql/bin/mysql -u root -p

在MySQL客户端中执行以下SQL命令,建立MySQL指定的“test”数据库,并将其名为“example_db”,并添加一个名称为“example_user”的用户,该用户将拥有该数据库的完全访问权限。

-- 创建名为example_db的数据库
CREATE DATABASE example_db;

-- 为该数据库添加example_user用户,并赋予该用户完全访问权限
GRANT ALL PRIVILEGES ON example_db.* TO 'example_user'@'%' IDENTIFIED BY 'password';

9. 测试

至此,MySQL安装和配置已经完成。我们现在可以使用以下命令来测试MySQL:

# 以example_user用户身份连接到example_db数据库
/usr/local/mysql/bin/mysql -u example_user -p example_db

示例

  • 示例1:使用source导入SQL脚本文件

我们可以使用以下命令将SQL脚本加载到MySQL客户端中:

```bash
# 以example_user用户身份连接到example_db数据库
/usr/local/mysql/bin/mysql -u example_user -p example_db

# 使用source命令载入SQL脚本
source /tmp/example_db.sql
```

  • 示例2:仅显示名称和版本

我们可以使用以下命令来查看MySQL的版本:

bash
# 查看MySQL版本
/usr/local/mysql/bin/mysql -V

以上就是在CentOS 7系统上编译安装MySQL 5.7.13的步骤详解。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:在CentOS7系统上编译安装MySQL 5.7.13步骤详解 - Python技术站

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

相关文章

  • MySQL查看索引(SHOW INDEX)方法详解

    MySQL中可以使用SHOW INDEX语句来查看表的索引信息,该语句的语法形式如下: SHOW INDEX FROM tablename; 其中,tablename表示需要查看索引的表名。 该语句的结果包括以下信息: Table:索引所属的表名; Non_unique:索引是否允许相同的值,0表示唯一索引,1表示非唯一索引; Key_name:索引名称; …

    MySQL 2023年3月10日
    00
  • MySQL中存储过程的详细详解

    MySQL中存储过程是事先定义好的SQL语句集合,可以像执行函数一样,通过调用存储过程来完成一系列操作。下面我们详细讲解MySQL中存储过程的使用。 创建存储过程 创建存储过程需要使用CREATE PROCEDURE语句,格式如下: CREATE PROCEDURE 存储过程的名字 [参数列表] BEGIN 存储过程的语句 END; 其中,参数列表为可选项,…

    database 2023年5月18日
    00
  • linux下安装升级mysql到新版本(5.1-5.7)

    下面是针对Linux系统下安装升级MySQL到新版本的完整攻略。 准备 在开始安装升级MySQL之前,需要确保已经安装并配置好了以下环境: gcc automake、autoconf libtool make bison ncurses-devel 另外,最新版的MySQL安装包可以从官方网站下载。 下载与解压 在服务器上下载MySQL二进制安装包 wget…

    database 2023年5月22日
    00
  • Linux 解决Deepin无法在root用户启动Google Chrome浏览器的问题

    步骤1:通过Shell获取Deepin版本信息 在终端中执行以下命令,查看Deepin的版本信息。此处以Deepin V20为例。 cat /etc/deepin-version 输出如下: 20 (1000) unstable 2022-06-20 步骤2:安装Google Chrome浏览器 在浏览器中打开Google Chrome浏览器官网(https…

    database 2023年5月22日
    00
  • Go语言编程中判断文件是否存在是创建目录的方法

    在Go语言中,判断文件是否存在并创建目录一般可以通过os.Stat函数和os.MkdirAll函数来完成。 检查文件是否存在 可以使用os.Stat函数来检查文件是否存在,如果文件存在则返回nil,否则返回一个错误。 package main import ( "fmt" "os" ) func main() { _,…

    database 2023年5月22日
    00
  • MSSQL附加数据库拒绝访问提示5120错误的处理方法

    以下是MSSQL附加数据库拒绝访问提示5120错误的处理方法的完整攻略: 问题描述 在使用MSSQL Server Management Studio附加数据库时,可能会遇到拒绝访问并提示5120错误的情况。这个错误通常是由于权限不足或操作系统文件句柄正在被使用导致的。 处理方法 方法一:使用管理员权限运行MSSQL Server Management St…

    database 2023年5月19日
    00
  • MySQL索引类型Normal、Unique和Full Text的讲解

    MySQL是目前应用最广泛的数据库之一,在建立表的时候经常需要对其进行索引以提高查询的速度。MySQL支持的索引类型有Normal、Unique和Full Text,下面我将详细讲解这三种索引类型。 Normal索引 Normal索引是最基本的索引类型,它将数据排序并放置在B-tree(平衡树)结构中,能够极大地提高查询效率。Normal索引不限制表中字段的…

    database 2023年5月22日
    00
  • MySQL使用二进制日志还原数据库

    MySQL 是一种开源的关系型数据库管理系统,它的日志文件是用于恢复和备份的重要部分。MySQL 支持三种类型的二进制日志,分别是:二进制日志、事务日志、和错误日志。其中,二进制日志是 MySQL 最常用的日志类型,它记录了所有添加、更改和删除表记录的 SQL 语句,是一个重要的恢复和备份工具。本文将详细介绍如何使用 MySQL 二进制日志还原数据库。 启用…

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