CentOS7安装Mysql5.7(ARM64架构)
1.第一步:下载 arm 版本离线 mysql 5.7 安装包arm 版本离线 mysql 5.7 安装包
2.第二步:查询并卸载 CentOS 自带的数据库 Mariadb
找到数据库 mariadb,如果有会给出一个结果,结果是 mariadb 名称
rpm -qa | grep mariadb
如果存在就卸载
rpm -e --nodeps [查询到的mariadb名称]
3.第三步:创建用户和用户组
先查抄 mysql 用户和用户组有没有被使用
cat /etc/group | grep mysql
cat /etc/passwd | grep mysql
添加 mysql 用户组 groupadd mysql
添加 mysql 用户并参加用户组 useradd -g mysql mysql
修改 mysql 用户的登陆密码(这里根据必要设置,可以略过)
passwd mysql
12345678
4.第四步:上传文件至服务器的/usr/local 后解压、改名、授权
cd /usr/local
上传文件
解压安装包 mysql-5.7.27-aarch64.tar.gz
tar -xvf mysql-5.7.27-aarch64.tar.gz
将解压后的目录改名为 mysql
mv mysql-5.7.27-aarch64 mysql
目录授权操纵
按照下面的操作执行
cd /usr/local/
chown -R mysql mysql/
chgrp -R mysql mysql/
cd mysql/
mkdir data
chown -R mysql:mysql data
5.第五步:安装 mysql 数据库【目录:/usr/local/mysql/bin】
mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
安装成功输出的日志如下:
https://img-blog.csdnimg.cn/img_convert/9a5f6146c2f31a2b2e3a31765d276b66.png
(红线部门即为 root 密码)
报错:
https://img-blog.csdnimg.cn/img_convert/5289ba9f4460fb8530ba19a36c8ec6fb.png
解决方案:
缘故原由是因为没有修改环境变量
vi /etc/profile
在文件最后一行添加:export PATH=$PATH:/usr/local/mysql/bin
https://img-blog.csdnimg.cn/img_convert/03aa4cdb0d4a959cf589e12ecd39c17d.png
退出后使用命令
source /etc/profile
报错:
https://img-blog.csdnimg.cn/img_convert/5b77565fe5721236245b8161c499cb38.png
解决方案:
yum install libatomic
报错:
https://img-blog.csdnimg.cn/img_convert/6931fb8d83202ee0249d47ce036d0816.png
解决方案:
缘故原由:因为 CentOS7 当前版本默认的 GCC 的版本太老,内里的动态链接库没有 GLIBCXX_3.4.20 和 GLIBCXX_3.4.21。
1.执行命令查抄动态库:strings /usr/lib64/libstdc++.so.6 | grep GLIBC
输出:
https://img-blog.csdnimg.cn/img_convert/48d3908e2132e4e5394778e48cbd9145.png
可以看出最高版本是 3.4.19
2.查看 libstdc++.so.6 的位置:find / -name libstdc++.so.6*
输出:
https://img-blog.csdnimg.cn/img_convert/c8d758be17183718d3cfb27bcca95bf5.png
最高版本文件是 libstdc++.so.6.0.19
3.下载 GCC 源码,选择合适的版本,本文以 gcc-13.2.0 为例
gcc 各版本下载地址: https://ftp.gnu.org/gnu/gcc/
安装编译环境:
yum groupinstall "Development Tools"
yum install glibc-static libstdc++-static
解压上传的 gcc-13.2.0:tar -Jxvf gcc-13.2.0.tar.xz 【在上传目录中运行】
进入源码目录进行编译:
cd gcc-13.2.0
./contrib/download_prerequisites
mkdir build
cd build
生成 make 文件并且编译(ps:此处编译时间比力久)
../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
make
编译完成后安装:make install
安装完成后查看版本是否更新:strings /usr/lib64/libstdc++.so.6 | grep GLIBC
https://img-blog.csdnimg.cn/img_convert/5adf80aab3c913c9cf706bd8923394b2.png
发现并没有更新到最新的动态库
查找编译 gcc 时生成的最新动态库:find / -name "libstdc++.so*"
https://img-blog.csdnimg.cn/img_convert/5b02612760c5be1555b3880969f98ca2.png
可以看到生成的最新版本文件在:/usr/local/mysql/extra/libstdc++.so.6.0.24
下面拷贝文件到 lib 目录,并重新建立软链接:
cp /usr/local/mysql/extra/libstdc++.so.6.0.24 /usr/lib64/
cd /usr/lib64
rm libstdc++.so.6
ln -sf /usr/lib64/libstdc++.so.6.0.24 /usr/lib64/libstdc++.so.6
最后再确认 GLIBCxx 的版本: strings /usr/lib64/libstdc++.so.6 |grep GLIBC
6.第六步:安装成功后设置文件和目录权限:
此时 root 用户 还是在 mysql 目录下执行
cp ./support-files/mysql.server /etc/init.d/mysqld
chown 777 my.cnf
chmod +x /etc/init.d/mysqld
7.第七步:修改配置文件
将 /etc/init.d/mysqld 内里的 所有的 mysql-5.7.27-aarch64 改为 mysql
将 /usr/local/mysql/my.cnf 内里所有的 “socket =” 后面改为 /tmp/mysql.sock
https://img-blog.csdnimg.cn/img_convert/e236fff35e06f5ebcb5ebc16a6bfb774.png
8.第八步:创建日志文件
创建日志目录
mkdir /usr/local/mysql/logs
创建错误日志文件
echo “” > /usr/local/mysql/logs/mysql-error.log
授权
chown -R mysql:mysql /usr/local/mysql/logs/mysql-error.log
9.第九步:启动脚本
/etc/init.d/mysqld restart
10.第十步:登录并修改 root 密码
mysql -uroot -p
输入密码(上面操纵 bin/mysqld --initialize xxx 生成)
11.第十一步:设置开机自启动
先将/usr/local/mysql/support-files/ 文件夹下的 mysql.server 文件复制到 /etc/rc.d/init.d/ 目录下 mysqld
命令: cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld
赋予可执行权限:chmod +x /etc/init.d/mysqld
添加为服务: chkconfig --add mysqld
查看服务列表: chkconfig --list
https://img-blog.csdnimg.cn/img_convert/e6638c96a4fa36395e4a1753e632180a.png
看到 3、4、5 状态为开大概为 on 则表示成功。如果是 关大概 off 则执行一下:chkconfig --level 345 mysqld on
重启计算机:reboot
结束,OK~
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]