rpm -ivh方式安装mysql并修改数据存储位置的实现

 更新时间:2023年09月12日 09:17:47   作者:吹牛不交税  
在Linux环境下进行MySQL的安装可以使用不同的方式,但在本文中我们将关注一种特定的方式,即通过RPM包的方式进行安装,本文主要介绍了rpm -ivh方式安装mysql并修改数据存储位置的实现,感兴趣的可以了解一下

因为贪图便宜,也因为开始选服务器时不懂,没注意,新买的linux服务器选了个arm架构的cpu然后系统也自然而然只能选唯一的arm架构的centos7.9 。因为这个失误,让我在arm架构的linux上安装mysql尝尽了苦头。

先总结记录如下:

1、下载mysql tar.gz 安装包

安装包下载链接:MySQL Community Downloads , centos7的只能选择redhed系统下的安装包。而且我的阿里云系统是arm版本的,还智能选择arm系列安装包。

将下载的文件上传到linux中的一个目录,我这里是上传到了mnt目录,因为我的mnt目录是挂载了数据盘的, 我想要尽量保持系统盘不被安装的软件占用太多空间。安装的时候我也会解压到这个目录去安装。

2、检测环境

CentOS是自带mariadb, 和mysql的安装相冲突 , 所以需要提前删除

rpm -qa | grep mariadb //查找
yum remove mariadb-libs-5.5.68-1.el7.aarch64
rpm -qa | grep mariadb //再次查找,验证是否删除

3、解压mysql文件

在mnt创建一个目录,然后将mysql压缩包解压到这个目录。如果用命令创建目录可能还涉及到赋权,我这里直接用sftp手工创建的,默认就是755权限。

mkdir /mnt/mysqlarm5.7.4
cd mnt
tar -xvf mysql-8.0.31-1.el7.aarch64.rpm-bundle.tar -C mysqlarm5.7.4

4、安装

cd mysqlarm5.7.4

由于rpm方式下载对依赖关系有所要求, 所以下载时要严格根据以下顺序安装

rpm -ivh mysql-community-common-8.0.31-1.el7.aarch64.rpm
rpm -ivh mysql-community-client-plugins-8.0.31-1.el7.aarch64.rpm
rpm -ivh mysql-community-libs-8.0.31-1.el7.aarch64.rpm
rpm -ivh mysql-community-client-8.0.31-1.el7.aarch64.rpm
rpm -ivh mysql-community-icu-data-files-8.0.31-1.el7.aarch64.rpm
rpm -ivh mysql-community-server-8.0.31-1.el7.aarch64.rpm

最后一个安装出现了libaio.so.1()(64bit) 被 mysql-community-server-8.0.31-1.el7.aarch64 需要

执行yum install libaio

然后再次执行rpm -ivh mysql-community-server-8.0.31-1.el7.aarch64.rpm

5、初始化和配置mysql

初始化:mysqld --initialize --user=mysql

启动mysql:service mysqld start

查看初始密码:tail -20 /var/log/mysqld.log

下面红色框的是密码 ,复制密码出来先放到一个文本框比如我的密码是 if5<ukFtRaiL

登录mysql(密码中有特殊字符的,用转义字符表示)

mysql -uroot -p

修改密码

alter user 'root'@'localhost' identified by '密码';

6、测试远程登录

先确保您的服务器所在安全组打开了3306端口,打开方法自行百度。

然后用mysql工具测试远程登录

转到mysql 库

use mysql;

查询当前用户可登录的客户端情况:从mysql 库的user表查询

select user,password from user;

我的提示没有passowrd列 , 因为mysql8.0以上没有这个列。

所以我 select user,authentication_string,host from user;

执行脚本更新root的host字段,记得第二行也要执行,否则不能刷新。

update user set host = '%' where user ='root';
flush privileges;

7、修改mysql所在数据库文件的目录位置

因为我系统盘不大,不想数据库文件存放在系统盘,所以需要改数据库目录。先创建目录

mkdir /mnt/mysql8data

我又偷懒用了sftp手工创建的。

在更改MySQL的数据目录前,必须关闭MySQL服务。

service mysql status
service mysql stop
mysqladmin -u root -p shutdown #停止进程需要输入密码

进入etc目录,查看mysql的cnf配置文件,我的是etc/my.cnf

用命令vim my.cnf 查看编辑,

也可以用sftp工具直接下载下来修改再上传,我用了后者,简单明了。

数据目录在 /var/lib/mysql ,拷贝到 /mnt/mysql8data 。

执行cp命令 cp -a /var/lib/mysql /mnt/mysql8data

修改my.cnf 配置,然后my.cnf文件上传到etc。

#datadir=/var/lib/mysql
#socket=/var/lib/mysql/mysql.sock
datadir=/mnt/mysql8data/mysql
socket=/mnt/mysql8data/mysql/mysql.sock
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
[client]
default-character-set=utf8
socket=/mnt/mysql8data/mysql/mysql.sock
[mysql]
default-character-set=utf8
socket=/mnt/mysql8data/mysql/mysql.sock

重新启动MySQL服务

systemctl start mysqld.service

验证数据目录是否修改成功

mysql -hlocalhost -uroot -p

输入密码

show variables like '%datadir%';

测试远程连接,我使用的是Navicat工具

参考

https://blog.csdn.net/zjl0409/article/details/121998384

https://blog.csdn.net/Southside3amurai/article/details/128503656

到此这篇关于rpm -ivh方式安装mysql并修改数据存储位置的实现的文章就介绍到这了,更多相关rpm -ivh安装mysql内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • mysql安装报错unknown variable ‘mysqlx_port=0.0‘简单解决过程

    mysql安装报错unknown variable ‘mysqlx_port=0.0‘简单解决过程

    这篇文章主要给大家介绍了关于mysql安装报错unknown variable ‘mysqlx_port=0.0‘的解决过程,文中通过代码介绍的非常详细,对大家的学习或者工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2024-08-08
  • mysql 5.7 zip 文件在 windows下的安装教程详解

    mysql 5.7 zip 文件在 windows下的安装教程详解

    这篇文章主要介绍了mysql 5.7 zip 文件在 windows下的安装步骤,首先我们需要先下载mysql最新版本然后解压文件夹,本文介绍的非常详细,具有参考借鉴价值,需要的朋友可以参考下
    2016-09-09
  • mysql快速插入大量数据的正确方法

    mysql快速插入大量数据的正确方法

    在处理大量数据时如果一条一条地插入会极大地影响效率,因此批量插入是一个更好的选择,下面这篇文章主要给大家介绍了关于mysql快速插入大量数据的正确方法,需要的朋友可以参考下
    2024-01-01
  • php后台经常提示无法连接mysql 刷新后又可以访问的解决方法

    php后台经常提示无法连接mysql 刷新后又可以访问的解决方法

    这几天有一台MySQL数据库服务器出现了频繁的掉线情况,通过排查,并没有排查出哪个网站被攻击,百思不得其解中的时候,群里有个朋友说是因为微软KB967723造成的,网上搜索了一下,果然很多人都是这样的问题,都是windows系统下安装的MySQL造成的
    2011-05-05
  • 关于MySQL存取图片的三种方式(含源码示例)

    关于MySQL存取图片的三种方式(含源码示例)

    最近在做小程序的后台,要求将小程序用户以upload方法上传的图片保存到mysql数据库中,然后机缘巧合三种方式都试了,所以专门整理出来分享给大家,可能有的地方说的不太对,欢迎大家帮纠正,需要的朋友可以参考下
    2024-04-04
  • mysql 字符串转数组的实现示例

    mysql 字符串转数组的实现示例

    有时候,我们需要将一个字符串拆分成一个数组,本文主要介绍了mysql 字符串转数组的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-01-01
  • OEL7.6源码安装MYSQL5.7的教程

    OEL7.6源码安装MYSQL5.7的教程

    这篇文章主要介绍了OEL7.6源码安装MYSQL5.7 的教程,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-07-07
  • MySQL查询结果处理方式

    MySQL查询结果处理方式

    这篇文章主要介绍了MySQL查询结果处理方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-04-04
  • MySQL字段为 NULL的5大坑

    MySQL字段为 NULL的5大坑

    本文主要介绍了MySQL字段为 NULL的5大坑,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • MYSQL使用.frm恢复数据表结构的实现方法

    MYSQL使用.frm恢复数据表结构的实现方法

    在这里我们探讨使用.frm文件恢复数据表机构(当然如果你以前备份过数据表,你可以使用调用备份的数据表)
    2010-02-02

最新评论