CentOS MySQL 5.7编译安装步骤详细说明

以下是CentOS MySQL 5.7编译安装的详细步骤:

1. 下载MySQL安装包

去MySQL官方网站,选择下载MySQL 5.7版本的源码压缩包(tar.gz格式),例如:mysql-5.7.33.tar.gz

2. 安装编译工具和依赖库

使用以下命令安装编译器、自动化构建工具和MySQL编译所需的依赖库:

yum install -y wget make cmake gcc gcc-c++ bzip2 bzip2-devel ncurses-devel perl

3. 解压源代码包

使用以下命令解压MySQL源码包:

tar -zxvf mysql-5.7.33.tar.gz
cd mysql-5.7.33

4. 编译MySQL

进入MySQL源代码目录,并执行以下命令:

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_SSL=bundled \
-DWITH_ZLIB=bundled \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1

其中各个参数含义如下:

  • CMAKE_INSTALL_PREFIX:指定MySQL的安装目录(必填);
  • MYSQL_DATADIR:指定MySQL数据文件的目录(必填);
  • SYSCONFDIR:指定配置文件目录(可选);
  • WITH_XXX_STORAGE_ENGINE:指定启用哪些存储引擎(可选,按需选择);
  • WITH_SSL=bundled:启用加密支持(可选);
  • WITH_ZLIB=bundled:启用压缩支持(可选);
  • ENABLED_LOCAL_INFILE=1:启用本地文件读取(可选)。

执行完毕后,可以执行make命令开始编译:

make
make install

5. 初始化MySQL

执行以下命令初始化MySQL,创建数据目录并生成初始的系统表:

cd /usr/local/mysql
./bin/mysqld --initialize-insecure --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

其中,--initialize-insecure参数表示不启用密码验证机制,--basedir--datadir参数指定MySQL的安装目录和数据目录。

6. 启动MySQL

执行以下命令启动MySQL服务器:

cd /usr/local/mysql
./support-files/mysql.server start

7. 修改root用户密码

执行以下命令登录到MySQL服务器,并修改root用户的密码:

cd /usr/local/mysql
./bin/mysql -u root
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

其中,new_password为新密码。

8. 验证安装

执行以下命令查看MySQL服务的状态:

cd /usr/local/mysql
./support-files/mysql.server status

如果服务已经启动,会显示MySQL running的字样。接着使用以下命令连接到MySQL服务器并验证是否能够正常工作:

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

输入上一步中修改的密码,连接后输入以下命令进行验证:

show databases;

如果正常返回MySQL自带的数据库列表,就说明安装成功了。

示例1:如果你想使用MySQL数据库存储SpringBoot应用程序的数据,那么你可以在pom.xml中添加以下依赖项:

<dependency>
   <groupId>mysql</groupId>
   <artifactId>mysql-connector-java</artifactId>
   <version>8.0.23</version>
</dependency>

这样,SpringBoot应用程序就可以通过JDBC连接到MySQL数据库进行数据操作了。

示例2:如果你已经有一个MySQL数据库,并想要将其中的某些表迁移到另一个数据库中,可以使用以下命令将表导出为SQL文件:

mysqldump -u root -p --databases dbname --tables table1 table2 table3 > dump.sql

其中,

  • dbname为原数据库名称,table1 table2 table3为需要导出的表名;
  • dump.sql为导出的SQL文件名,你可以修改为其他的文件名。

接着,将dump.sql文件上传到目标服务器上,并使用以下命令将导出的SQL文件导入到另一个数据库中:

mysql -u root -p < dump.sql

其中,root为MySQL的用户名,dump.sql为导出的SQL文件。

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

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

相关文章

  • linux – mysql – 卸载:使用rpm方式安装的mysql

    一、查看系统中是否以rpm包安装的mysql rpm -qa | grep -i mysql 结果: 备注:如果有内容则证明是使用rpm方式安装的mysql   二、卸载 使用rpm -e 命令将上个命令中包列表进行卸载 如果报错:error: Failed dependencies 只要加入–nodeps就ok了 命令格式:rpm -e 包名称 –no…

    MySQL 2023年4月13日
    00
  • 调整SQLServer2000运行中数据库结构

    当需要调整SQLServer2000运行中数据库结构时,我们可以采取以下步骤: 1.备份数据库 在进行数据库结构调整之前,我们需要先备份好数据库,以防在操作过程中出现意外情况而导致的数据丢失问题。 在SQLServer2000中,我们可以通过执行以下T-SQL语句来备份数据库: BACKUP DATABASE [数据库名] TO DISK = ‘备份文件路径…

    database 2023年5月21日
    00
  • java.sql.SQLException: No value specified for parameter 2 at com.mysql.jdbc.SQLError.create 小Bug异常

    public boolean updateMemberslnfo(MembersInfo membersInfo) throws SQLException{ StringBuffer sqlBuffer = new StringBuffer(“UPDATE membersinfo SET “); boolean check = true; List<O…

    MySQL 2023年4月12日
    00
  • dedecms负载性能优化实例,三招让你的dedecms快10倍以上第2/2页

    以下是“dedecms负载性能优化实例,三招让你的dedecms快10倍以上第2/2页”攻略。 1.优化图片 1.1 图片格式和大小 图像格式是影响网页加载速度的一个重要因素。首先,选择合适的图片格式以更快地加载页面。JPEG 和 PNG 是最常用的类型,也是最广泛支持的类型。JPEG 是一个图像压缩标准,它可以大大减小文件大小,并在大多数情况下保持图像质量…

    database 2023年5月19日
    00
  • DBMS和电子表格的区别

    DBMS(数据库管理系统)和电子表格是两种不同的数据管理工具,有着不同的使用场景和优缺点。 DBMS是专门用于管理大量结构化数据的软件应用程序,允许用户对这些数据进行访问、管理、更新和查询。DBMS也提供了可扩展性、可靠性和高性能的特性。它们通常使用SQL(结构化查询语言)进行数据管理和查询,可以跨操作系统、与其他应用程序集成、支持多用户访问和提供可靠的数据…

    database 2023年3月27日
    00
  • 基于Mongodb分布式锁解决定时任务并发执行问题

    基于Mongodb分布式锁解决定时任务并发执行问题 分布式系统中,多台应用服务器可能同时执行同一个定时任务,导致重复执行或者并发执行的问题。为了解决此类问题,我们可以考虑使用分布式锁机制来协调不同服务器之间的定时任务执行。 Mongodb是一个分布式文档数据库,它支持分布式锁机制,可以很方便地用于解决上述问题。 具体操作步骤如下: 连接 Mongodb 数据…

    database 2023年5月22日
    00
  • 通过使用Byte Buddy便捷创建Java Agent

    本文将为大家介绍如何通过使用Byte Buddy创建Java Agent,达到对Java应用程序的增强和监控的目的。 第一步:新建项目并导入依赖 首先,我们需要在Eclipse或者IntelliJ IDEA中创建一个Maven项目,并导入Byte Buddy的依赖: <dependency> <groupId>net.bytebudd…

    database 2023年5月21日
    00
  • 从redis数据库取数据存放到本地mysql数据库

    redis数据库属于非关系型数据库,数据存放在内存堆栈中,效率比较高。 其存储数据是以json格式字符串存储字典的,而类似的关系型数据库无法实现这种数据的存储。 在爬取数据时,将数据暂存到redis中,等数据采集完成后,在从redis里将数据读取,并写入mysql数据库中。 在数据采集方面不在多说,只需将项目settings文件下的pipelines管道文件…

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