以下是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技术站