【信创】麒麟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

直接安装,没有硬性要求

  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获得)

依次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

  1. 启动

obd cluster start lo

  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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/146822.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

redis解压+windows安装+无法启动:1067

Redis下载安装图文教程&#xff08;Windows版_超详细&#xff09; 标题若遇到安装后无法启动&#xff1a;1067 排查方法如下&#xff1a; 1.查询是否有服务占用端口 查看6379的端口也没有被占用&#xff08;netstat -ano | findstr :6379&#xff09; 若有&#xff0c;kill掉…

【Linux】IO操作

IO 典型 IO 模型阻塞 IO非阻塞 IO信号驱动 IO异步 IO常见问题 多路转接模型select 模型poll 模型epoll 模型 典型 IO 模型 IO 操作指的就是数据的输入输出操作&#xff1b;IO 过程可以分为两个步骤&#xff1a;等待 IO 就绪、数据拷贝 阻塞 IO 发起 IO 操作&#xff0c;若当…

UE5 虚幻引擎 详解蓝图通信 必备的知识技能之一!!!

目录 0 引言1 直接蓝图通信1.1 在关卡蓝图中直接拖拽Actor1.2 Get Actor of Class/Get All Actors of Class 2 事件分发器2.1 创建事件分发器2.2 绑定事件分发器2.3 调用事件分发器 3 蓝图接口3.1 使用步骤3.2 为什么要使用蓝图接口 4 蓝图转换 0 引言 问题&#xff1a;为什么需…

图像处理与计算机视觉--第四章-图像滤波与增强-第一部分

目录 1.灰度图亮度调整 2.图像模板匹配 3.图像裁剪处理 4.图像旋转处理 5.图像邻域与数据块处理 学习计算机视觉方向的几条经验: 1.学习计算机视觉一定不能操之过急&#xff0c;不然往往事倍功半&#xff01; 2.静下心来&#xff0c;理解每一个函数/算法的过程和精髓&…

Vue中如何进行图表绘制

Vue中的图表绘制&#xff1a;数据可视化的艺术 数据可视化是现代Web应用程序的重要组成部分之一。Vue.js作为一种流行的JavaScript框架&#xff0c;提供了许多强大的工具和库&#xff0c;用于在前端应用程序中创建各种图表和数据可视化。本文将深入探讨在Vue中进行图表绘制的方…

怒刷LeetCode的第16天(Java版)

目录 第一题 题目来源 题目内容 解决方法 方法一&#xff1a;迭代 方法二&#xff1a;模拟 方法三&#xff1a;循环模拟 方法四&#xff1a;传递 第二题 题目来源 题目内容 解决方法 方法一&#xff1a;回溯 方法二&#xff1a;枚举优化 第三题 题目来源 题目…

差分放大器的精髓:放大差模信号 抑制共模信号

参考如图基本的差分放大电路&#xff0c;在R1R2 R3R4的条件下&#xff0c;其输出与输入的关系为 &#xff1a; 具体推导过程参考&#xff1a;差分运算放大器的放大倍数的计算及结论_正在黑化的KS的博客-CSDN博客 由这个式子我们可以发现&#xff0c;差分放大器放大的是同相端与…

stable diffusion和gpt4-free快速运行

这是一个快速搭建环境并运行的教程 stable diffusion快速运行gpt快速运行 包含已经搭建好的环境和指令&#xff0c;代码等运行所需。安装好系统必备anaconda、conda即可运行。 stable diffusion快速运行 github: AUTOMATIC1111/稳定扩散网络UI&#xff1a;稳定扩散网页用户界…

STL upper_bound和lower_bound函数

声明&#xff1a; 首先包含头文件#include<algorithm> 这里的两个函数所运用的对象必须是非递减的序列&#xff08;也就是数组&#xff0c;数组必须是非递减的&#xff09;&#xff0c;只有这样才可以使用upper_bound和lower_bound这两个函数。 还有一点&#xff0c;就…

(七)Flask之路由转换器

引子&#xff1a; from flask import Flaskapp Flask(__name__)# 通过使用<int>转换器&#xff0c;可以捕获URL中的整数值&#xff0c;并将其作为参数传递给视图函数。 app.route(/index/<int:nid>, methods[GET, POST]) def index(nid):print(nid)return Indexi…

软件测试之Python基础学习

目录 一、Python基础 Python简介、环境搭建及包管理 Python简介 环境搭建 包管理 Python基本语法 缩进(Python有非常严格的要求) 一行多条语句 断行 注释 变量 基本数据类型(6种) 1. 数字Number 2. 字符串String 3. 列表List 4. 元组Tuple 序列相关操作方法 …

黑豹程序员-架构师学习路线图-百科:Git/Gitee(版本控制)

文章目录 1、什么是版本控制2、特点3、发展历史4、SVN和Git比较5、Git6、GitHub7、Gitee&#xff08;国产&#xff09;8、Git的基础命令 1、什么是版本控制 版本控制系统&#xff08; Version Control &#xff09;版本控制是一种管理和跟踪软件开发过程中的代码变化的系统。它…

树莓派4B串口通信配置方式

目录 1树莓派4B的安装&#xff1a; 1.1安装Serial与使用 1.1.1安装serial 1.1.2打开串口 1.2设置硬件串口为GPIO串口&#xff08;修改串口映射关系&#xff09; 1.2.1修改配置文件 2.1minicom串口 2.1.1安装minicom 这篇博客源于&#xff1a;工创赛。需要让树莓派与STM…

JDK11优化了哪些功能以及新增了哪些特性功能|JDK各个版本的特性分析

一、前言 上一期讲了JDK10的一些新特性&#xff0c;需要回顾的朋友们可以去该专栏回顾一下 这一期讲一讲JDK11的一些新功能 二、新增特性 以下是JDK 11的一些新增或变化的特性&#xff1a; 1. 纯字符串类型的 HTTP 客户端: JDK 11 引入了一个新的 HTTP 协议的客户端 API&…

【Java】super 关键字用法

目录 this与super区别 1.访问成员变量-示例代码 继承中构造方法的访问特点 2.访问构造方法-示例代码&#xff1a; 继承中成员方法访问特点 3.访问成员方法-示例代码&#xff1a; super 关键字的用法和 this 关键字相似 this : 代表本类对象的引用super : 代表父类存储空间…

使用 Elastic 输入包自定义你的数据摄取

作者&#xff1a;Ishleen Kaur Elastic 通过集成&#xff08;integrations&#xff09;实现了外部数据源和 Elastic Observability Solution 之间数据流的收集、转换和分析。 集成包通过封装多个组件来实现这一点&#xff0c;包括代理配置 (agent configuration)、数据收集输入…

利用DMA的触发循环实现eTMR的PWM周期计数

利用DMA的触发循环实现对eTMR的PWM周期计数 文章目录 利用DMA的触发循环实现对eTMR的PWM周期计数引言分析问题eTMR的调试模式ModulizationFTM的多次重载事件终极大招-使用触发链 解决问题确认DMAMUX中的eTMR相关触发源eTMR产生触发信号 软件总结参考文献 引言 最近在同客户一起…

Docker学习_镜像和容器篇

简介 Docker是一种容器化的技术&#xff0c;可以实现在一台宿主机电脑上运行多个不同的容器&#xff0c;每个容器之间都相互独立&#xff0c;具有完整的一套文件&#xff0c;网络和端口。 可以将其理解为一种虚拟机技术&#xff0c;只不过和VMware等虚拟化技术不同&#xff0…

【工具】idea 设置自动渲染注释

前言 需求&#xff1a;自动渲染文档注释&#xff0c;看源码更加舒服。 已知 crtl alt Q 可以 设置 尝试搜索 render&#xff0c;发现有启用 “渲染文档注释” 的地方 坐标 &#xff1a; Settings -> Editor-> Appearance