arm 编译安装mysql5.5_ARM64架构下面安装mysql5.7.22

本文档详细介绍了在ARM64架构上编译并安装MySQL5.7.22的过程,包括创建用户组和用户、安装依赖、下载解压MySQL、配置环境变量、初始化启动以及解决安装过程中遇到的错误,如跳过密码校验、命令未找到及缺少libncurses.so.5库的问题。
摘要由CSDN通过智能技术生成

MySQL下载地址为:

1. 添加mysql用户组和mysql用户,用于隔离mysql进程

# groupadd -r mysql && useradd -r -g mysql -s /sbin/nologin -M mysql

2.安装依赖库

# yum install -y libaio*

3. 下载解压Mysql

# wget https://obs.cn-north-4.myhuaweicloud.com/obs-mirror-ftp4/database/mysql-5.7.27-aarch64.tar.gz

# tar xzvf mysql-5.7.27-aarch64.tar.gz -C /usr/local/

4.配置Mysql

# mv /usr/local/mysql-5.7.27-aarch64 /usr/local/mysql

# mkdir -p /usr/local/mysql/logs

# chown -R mysql:mysql /usr/local/mysql

# ln -sf /usr/local/mysql/my.cnf /etc/my.cnf

# cp -rf /usr/local/mysql/extra/lib* /usr/lib64/

# mv /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6.old

# ln -s /usr/lib64/libstdc++.so.6.0.24 /usr/lib64/libstdc++.so.6

# 设置开机启动

# cp -rf /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

# chmod +x /etc/init.d/mysqld

# systemctl enable mysqld

5. 添加环境变量

# vim /etc/profile

添加下面两行代码:

export MYSQL_HOME=/usr/local/mysql

export PATH=$PATH:$MYSQL_HOME/bin

# source /etc/profile

12708b55572e9bab4060d1aad52383a5.png

5. 初始化启动mysql

# 无密码初始化登录

# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

!!!执行这里出现错误:

8bc321e1e6842186c77092a02ef91c2d.png

解决方法:

vim /etc/my.cnf

查看文件,寻找datadir=...

查看到:datadir=/usr/local/mysql/data,

这个是data保存目录。

进入/usr/local/mysql/data后,查看到确实有数据:

将/usr/local/mysql/data备份,

cd/usr/local/mysql

mv data data.bak

接着执行:

mysqld--initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

#开启mysql

# systemctl start mysqld

#查看状态

# systemctl status mysqld

54adb45ad1845f87c15f34ae7a106689.png

这里表示mysql已经安装成功了。

因为mysql的这个初始密码安装稍有差池就会出错,之前在Win10上安装也出现过这样的情况,所以这里我们先设置一下不进行密码审核。

在mysql安装路径找到 my.ini(一般linux系统在/etc/my.ini)

vim打开:

在 [mysqld] 这一行下:

添加 skip-grant-tables 跳过密码校验

!!!本人环境下文件名为:my.cnf

使用:mysql -u root 进行登录

!!!某次重启开发板后,出现错误:

# mysql -u root-bash: mysql: command not found

原因:这是由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件。

首先得知道mysql命令或mysqladmin命令的完整路径,比如mysql的路径是:/usr/local/mysql/bin/mysql,我们则可以这样执行命令:

# ln-s /usr/local/mysql/bin/mysql /usr/bin

!!!提示出现错误

f799af52112d69a67a3533c2e68139d0.png

原因是缺少libncurses.so.5共享库。

解决方法:

本人使用的是EAIDK-610开发板,在板子的/lib64文件夹下查看到系统拥有libncurses.so.6.1的文件。

所以使用软连接创建一个libncurses.so.6.1指向libncurses.so.5的连接,这个共享库可以向下兼容。

具体参考下面图片事例。

7c71ab38ad87e7033eb4155d877d3c3e.png

再次使用:mysql -u root 进行登录,登录成功。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值