【信创】麒麟v10(arm)-mysql8-mongo-redis-oceanbase

Win10/Win11 借助qume模拟器安装arm64麒麟v10
前言

    近两年的国产化进程一直在推进,基于arm架构的国产系统也在积极发展,这里记录一下基于麒麟v10arm版安装常见数据库的方案。

  麒麟软件介绍: 银河麒麟高级服务器操作系统V10 - 国产操作系统、银河麒麟、中标麒麟、开放麒麟、星光麒麟——麒麟软件官方网站

  arm与x86_64架构存在差异,故无法通过vmware,virtualbox等虚拟机软件直接安装arm版本的麒麟v10,可以通过qume模拟器来模拟。网上方案比较多,这里以win11,qume7.1.0进行演示。

如果不进行OceanBase的安装演示,qume的虚拟硬盘可以少分一点,比如20G,内存8G即可。如果要实验oceanbase 推荐60G以上,内存16G,否则会出现问题。

软件版本一览

宿主机器: win11,32G,Intel11代i7,64位

Qume软件版本: 7.1.0

麒麟v10版本:  4.19.90-24.4.v2101.ky1,aarch64

Mysql 8.0.33-1.el8.aarch64

Redis redis-5.0.5-1.el7.aarch64

Mongo mongo-4.0.6-1.el7.aarch64

Oceanbase oceanbase-all-in-one-4.2.0.0-100120230915135249.el7.aarch64

安装虚拟机

步骤

  1. 镜像获取

银河麒麟v10下载(服务器版 桌面版) - 2022-11-24更新_银河麒麟v10镜像iso下载-CSDN博客

  1. 安装 qume

https://qemu.weilnetz.de/w64/2021/qemu-w64-setup-20210505.exe

直接安装,没有硬性要求

【信创】麒麟v10(arm)-mysql8-mongo-redis-oceanbase_第1张图片

  1. 创建一个虚拟环境

qemu-img create -f qcow2 E:\kylin\kylindisk.qcow2 40G

  1. 安装

注意替换路径

qemu-system-aarch64.exe -m 8192 -cpu cortex-a72 -smp 8,sockets=4,cores=2 -M virt -bios E:\kylin\QEMU_EFI.fd -device VGA -device nec-usb-xhci -device usb-mouse -device usb-kbd -drive if=none,file=E:\kylin\kylindisk.qcow2,id=hd0 -device virtio-blk-device,drive=hd0 -drive if=none,file=E:\mirror\Kylin-Server-10-SP2-Release-Build09-20210524-arm64.iso,id=cdrom,media=cdrom -device virtio-scsi-device -device scsi-cd,drive=cdrom  -net nic -net user,hostfwd=tcp::2222-:22

  1. 启动(不用指定镜像位置)

qemu-system-aarch64.exe -m 8192 -cpu cortex-a72 -smp 8,sockets=4,cores=2 -M virt -bios E:\kylin\QEMU_EFI.fd -device VGA -device nec-usb-xhci -device usb-mouse -device usb-kbd -drive if=none,file=E:\kylin\kylindisk.qcow2,id=hd0 -device virtio-blk-device,drive=hd0 -drive if=none,file=,id=cdrom,media=cdrom -device virtio-scsi-device -device scsi-cd,drive=cdrom  -net nic -net user,hostfwd=tcp::2222-:22

参考文献:

WIN10 x86环境部署ARM虚拟机(银河麒麟)实例_kylin-server-10-sp2-aarch64-release-build09-202105-CSDN博客

https://itas109.blog.csdn.net/article/details/109453945

安装mysql
  1. 安装包获取(可以直接使用提供的)

根据资料与实际测试,发现

8.0.33-1.el8.aarch64 版本最合适,该版本可以直接通过官网获取。

  1. 安装:

实测在模拟环境中,需要以下依赖(可以借助在能连接外网的环境下,使用yundownloader获得)

【信创】麒麟v10(arm)-mysql8-mongo-redis-oceanbase_第2张图片

依次rpm 安装依赖包

然后rpm mysql系列的包

  1. 修改安装包位置

mv -f /var/lib/mysql /data/      -----> 放到本地挂载硬盘中

ln -s  /data/mysql/ /var/lib/mysql

如果遇到权限问题,记得

chown -R mysql:mysql   /data/mysql

  1. 实测arm版本不需要初始化

mysqld --initialize --console

  1. 获取临时密码

grep  'temporary password' /var/log/mysqld.log |awk -F ' root@localhost: ' '{print $2}'

  1. 修改root密码: mysql -uroot -p 输出临时密码

ALTER USER 'root'@'localhost' IDENTIFIED WITH MYSQL_NATIVE_PASSWORD BY '你的密码';

flush privileges;

然后退出重新登录

  1. 创建root@%

Use mysql;

CREATE USER ‘root’@'%' IDENTIFIED WITH mysql_native_password BY ‘你的密码’

GRANT ALL ON *.* TO 'root'@'%';

flush privileges;  

安装mongo
  1. 获取安装包

https://mirrors.huaweicloud.com/kunpeng/yum/el/7/aarch64/Packages/database/mongo-4.0.6-1.el7.aarch64.rpm

https://mirrors.huaweicloud.com/kunpeng/yum/el/7/aarch64/Packages/database/mongodb-tools-4.0.6-1.aarch64.rpm

  1. 安装

rpm -ivh mongo-4.0.6-1.el7.aarch64.rpm

rpm -ivh mongodb-tools-4.0.6-1.aarch64.rpm

  1. 配置

vim /etc/mongod.conf

storage:

   dbPath: "/data/mongo" #数据存放位置

systemLog:

   destination: file

   path: "/data/mongo/mongodb.log" #日志存放位置

net:

   bindIp: 0.0.0.0 #对远程连接ip不限制

   port: 27017 #端口号

processManagement:

   fork: true #后台启动

security:

  authorization: enabled

  1. 编辑脚本

 vim /etc/profile.d/mongodb.sh

#mongoDB

export MONGODB_HOME=/usr/local/mongo

export PATH=$PATH:$MONGODB_HOME/bin

  1. source /etc/profile
  1. vim /etc/systemd/system/mongodb.service

[Unit]

Description=mongodb-service

After=network.target

[Service]

Type=forking

ExecStart=/usr/local/mongo/bin/mongod --config /etc/mongod.conf

PrivateTmp=true

[Install]

WantedBy=multi-user.target

systemctl daemon-reload

启动

systemctl start mongodb.service

加入自启动

systemctl enable mongodb.service

安装redis

0 获取安装包

华为开源镜像站_软件开发服务_华为云 arm类别 华为鲲鹏 依次去找,或者直接下载如下地址

wget https://repo.huaweicloud.com/kunpeng/yum/el/7/aarch64/Packages/bigdata/redis-5.0.5-1.el7.aarch64.rpm

  1. 安装

rpm -ivh redis-5.0.5-1.el7.aarch64.rpm

  1. 配置

vim /etc/redis.conf

将bind 127.0.0.1 改成了 bind 0.0.0.0

把6379改成自己想要的端口

启动守护进程

daemonize no 改为 daemonize yes

修改Redis密码

requirepass foobared 改为  requirepass 你的密码

  1. 启动

redis-server /etc/redis.conf

  1. 登录

redis-cli

auth 你的密码

安装OceanBase社区版

0 获取安装包(OceanBase All in One)

https://open.oceanbase.com/softwareCenter/community

选择arm版本

  1. 解压到 /data/oceanbase/oceanbase-all-in-one

mkdir /data/oceanbase

tar -xzf oceanbase-all-in-one.4.0.0.0-beta-100120221102135736.el7.x86_64.tar.gz -C /data/oceanbase

  1. 切换到 /data/oceanbase

执行 ./install.sh

  1. cp mini-local-example.yaml ~

复制配置文件到home路径,且cd ~

/data/oceanbase/oceanbase-all-in-one/obd/usr/obd/example

  1. 按需修改配置
  1. 部署单机版本

obd cluster deploy lo -c mini-local-example.yaml

【信创】麒麟v10(arm)-mysql8-mongo-redis-oceanbase_第3张图片

  1. 启动

obd cluster start lo

【信创】麒麟v10(arm)-mysql8-mongo-redis-oceanbase_第4张图片

  1. 登录

obclient -h127.0.0.1 -P2881 -uroot -Doceanbase

报错及处理方案:

问题1: open files must not be less than 20000

临时:
echo 1048576 > /proc/sys/fs/file-max 和 ulimit -HSn 1048576

永久:

vim /etc/profile

ulimit -HSn 1048576

source /etc/profile

问题2: 卡initial 通常不超过5分钟,如果超过5分钟,请检查资源

一些命令:

obd cluster list 查看集群列表

obd cluster deploy <集群名称>   销毁集群

资料备份

华为信创镜像:

https://mirrors.huaweicloud.com/kunpeng/yum/el/7/aarch64/Packages/database/

mv /etc/yum.repos.d/ /etc/yum.repos.d-bak

mkdir /etc/yum.repos.d

echo -e "[kunpeng]\nname=CentOS-kunpeng - Base - mirrors.huaweicloud.com\nbaseurl=https://mirrors.huaweicloud.com/kunpeng/yum/el/7/aarch64/\ngpgcheck=0\nenabled=1" > /etc/yum.repos.d/CentOS-Base-kunpeng.repo

鲲鹏使能:

https://www.hikunpeng.com/document/detail/zh/kunpengdbs/ecosystemEnable/MongoDB/openmind_mangodb3613_03_0025.html

你可能感兴趣的:(redis,oceanbase,数据库)