CentOS 7.2 Yum编译安装MySQL 5.6

yizhihongxing

下面是“CentOS 7.2 Yum编译安装MySQL 5.6”的完整攻略:

1. 安装编译环境

首先,需要安装编译MySQL所需的环境:

sudo yum -y install gcc gcc-c++ ncurses-devel perl openssl-devel cmake make

2. 下载MySQL 5.6源码

去官网下载MySQL 5.6的源码包:https://dev.mysql.com/downloads/mysql/5.6.html#downloads

或者直接使用wget命令下载:

cd /usr/local/src/
sudo wget -c https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.51.tar.gz

3. 编译安装MySQL 5.6

解压源码包,并进入源码目录:

sudo tar -zxvf mysql-5.6.51.tar.gz
cd mysql-5.6.51

接下来进行编译安装MySQL 5.6:

sudo cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
sudo make -j $(grep -c ^processor /proc/cpuinfo)
sudo make install

其中,参数选项的含义是:

  • CMAKE_INSTALL_PREFIX:MySQL安装目录,建议使用/usr/local/mysql
  • MYSQL_DATADIR:MySQL数据文件目录,建议使用/usr/local/mysql/data
  • WITH_INNOBASE_STORAGE_ENGINE:编译安装InnoDB存储引擎;
  • WITH_ARCHIVE_STORAGE_ENGINE:编译安装Archive存储引擎;
  • WITH_BLACKHOLE_STORAGE_ENGINE:编译安装Blackhole存储引擎;
  • ENABLED_LOCAL_INFILE:允许从本地文件导入数据;
  • DEFAULT_CHARSET:默认字符集;
  • DEFAULT_COLLATION:默认排序规则。

编译完成后,执行以下命令进行MySQL的初始化:

sudo /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

然后修改MySQL的配置文件my.cnf,可以将默认的my-medium.cnf拷贝一份作为my.cnf,并进行修改:

sudo cp support-files/my-medium.cnf /etc/my.cnf
sudo vi /etc/my.cnf

[mysqld]段中添加以下内容:

# set mysql bind ip
bind-address = 0.0.0.0

# set mysql character
skip-character-set-client-handshake
character-set-server=utf8
collation_server=utf8_general_ci

# set mysql data and log file dir
datadir=/usr/local/mysql/data
log-bin=mysql-bin
binlog-format=ROW

其中,bind-address表示MySQL监听的IP地址,这里设置为0.0.0.0表示支持所有IP连接;character-set-servercollation-server表示MySQL默认使用的字符集和排序规则;datadir表示MySQL数据文件的存储目录;log-binbinlog-format表示MySQL开启binlog,并设置binlog格式为ROW。

重启MySQL服务:

sudo /usr/local/mysql/support-files/mysql.server restart

完成以上步骤后,MySQL 5.6就顺利编译安装完成了。

4. 示例说明

示例1:创建MySQL用户和数据库

如果需要创建MySQL用户和数据库,可以使用以下命令:

# 登录MySQL
mysql -u root -p

# 创建一个用户
CREATE USER 'username'@'%' IDENTIFIED BY 'password';

# 创建一个数据库
CREATE DATABASE dbname;

# 给用户授权
GRANT ALL PRIVILEGES ON dbname.* TO 'username'@'%';

# 刷新权限
FLUSH PRIVILEGES;

其中,usernamepassword是需要创建的新用户的用户名和密码,dbname是需要创建的数据库名。

示例2:导入数据

如果需要导入数据到MySQL中,可以使用以下命令:

# 登录MySQL,并选择需要导入数据的数据库
mysql -u username -p dbname

# 导入数据
source /path/to/data.sql

其中,usernamedbname是需要导入数据的MySQL用户名和数据库名,/path/to/data.sql是数据文件的路径。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:CentOS 7.2 Yum编译安装MySQL 5.6 - Python技术站

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

相关文章

  • MyBatis利用MyCat实现多租户的简单思路分享

    MyBatis利用MyCat实现多租户的简单思路分享 在进行多租户系统开发时,需要对租户数据进行隔离,使不同租户之间的数据相互独立,同时需要保证系统的性能和可扩展性。MyBatis是一个流行的Java持久化框架,而MyCat是一个MySQL集群代理,可以实现数据分片、读写分离、负载均衡等功能。结合起来,可以在MyBatis中使用MyCat来实现多租户系统。 …

    database 2023年5月22日
    00
  • 百度网盘下载东西显示本地文件写入失败的解决办法

    下面是关于“百度网盘下载东西显示本地文件写入失败的解决办法”的完整攻略。 问题描述 当你在使用百度网盘下载东西时,有时会出现本地文件写入失败的情况,具体表现为该文件的下载状态为出现一道红色的感叹号,并在状态栏下方显示“本地文件写入失败”的提示。 解决步骤 针对该问题,我提供以下解决步骤: 检查本地磁盘空间是否充足 如果你的本地磁盘空间不足,那么就会导致无法写…

    database 2023年5月21日
    00
  • C#拼接SQL语句 用ROW_NUMBER实现的高效分页排序

    接下来我会详细讲解如何使用C#拼接SQL语句实现高效分页排序,并附上两条示例说明。 什么是ROW_NUMBER? 首先,我们需要了解一下ROW_NUMBER函数的作用。ROW_NUMBER是SQL Server中的一种分析函数,用于给每一行数据加上行号。通过ROW_NUMBER,我们可以方便地实现分页和排序。 如何使用ROW_NUMBER进行分页排序? 使用…

    database 2023年5月21日
    00
  • SQL Server 2017无法连接到服务器的问题解决

    当我们在连接SQL Server 2017时,可能会遇到无法连接到服务器的问题,这时需要我们根据具体的情况进行分析,找到问题的根源,并进行解决。本文将详细介绍如何解决SQL Server 2017无法连接到服务器的问题。 步骤一:检查SQL Server是否正常运行 首先我们需要确定SQL Server 是否正常运行,可以使用以下命令查看SQL Server…

    database 2023年5月21日
    00
  • 探索ORACLE之ASM概念(完整版)

    “探索ORACLE之ASM概念(完整版)”这篇文章主要介绍了ORACLE中的ASM(Automatic Storage Management)概念及其实现方式、优缺点等内容。以下为该文章的详细攻略: 概述 通过阅读该文,可以了解到何为ASM,ASM的实现方式及其提供的优缺点等内容 ASM的概念 对ASM基本概念的介绍:ASM是一种Oracle软件驱动的存储管…

    database 2023年5月21日
    00
  • Sql Server触发器的使用

    下面是关于“Sql Server触发器的使用”的完整攻略: 什么是Sql Server触发器 Sql Server触发器是一种特殊的存储过程,它会在指定事件发生时自动执行。这些事件通常是对一个表的数据进行插入、更新、删除操作。使用触发器,可以自动实施某些业务规则、强制执行复杂的完整性约束、记录所有数据的变化等。 创建Sql Server触发器的语法与步骤 触…

    database 2023年5月21日
    00
  • Mysql临时表原理及创建方法解析

    MySQL 临时表原理及创建方法解析 什么是 MySQL 临时表 MySQL 临时表是在数据库连接结束时自动删除的表,也就是说,它们只存在于当前连接中,也只能在当前连接范围内使用。 临时表可以通过 CREATE TEMPORARY TABLE 或 CREATE TEMPORARY TABLE IF NOT EXISTS 语句创建。与普通表不同的是,临时表会被…

    database 2023年5月22日
    00
  • MySQL explain根据查询计划去优化SQL语句

    当我们执行 MySQL 数据库中一条SELECT语句时,MySQL 根据查询语句的结构和条件,生成一个查询计划,然后根据该计划来执行查询操作。通过执行 explain 命令,我们可以获取这个查询计划,通过这个查询计划,我们可以比较容易地找出 SQL 查询语句存在的性能瓶颈,从而进一步优化 SQL 语句,提高查询效率。 下面是根据查询计划优化SQL语句的完整攻…

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