4.银河麒麟V10(ARM) 离线安装 MySQL

news2025/1/1 18:58:44

1. 系统版本

[root@ga-sit-cssjgj-db-01u ~]# nkvers
############## Kylin Linux Version #################
Release:
Kylin Linux Advanced Server release V10 (Lance)

Kernel:
4.19.90-52.39.v2207.ky10.aarch64

Build:
Kylin Linux Advanced Server
release V10 (SP3) /(Lance)-aarch64-Build23/20230324
#################################################
[root@ga-sit-cssjgj-db-01u ~]#

2. MySQL 8.0.40版本下载

直接官网下载:

https://dev.mysql.com/downloads/mysql/

选择版本:

img

img

下载不了请移步到百度网盘

通过网盘分享的文件:mysql-8.0.40-1.el8.aarch64.rpm-bundle.tar

链接: https://pan.baidu.com/s/1etUFFGVO_8VLc7o58W3cOw?pwd=uwsf 提取码: uwsf

el8表示的是如CentOS 8,非麒麟版本的基本上都是el7版本,请核实你的版本在进行下载

3. 安装MySQL

3.1. 删除原有的mariadb

先查看一下是否已经安装了

rpm -qa | grep mysql
rpm -qa | grep mariadbrpm -e --nodeps mariadb-libs
rpm -e mariadb-server --nodeps
yum -y remove mysql*
yum -y remove mariadb*

删除mariadb,命令:

rpm -e --nodeps mariadb-libs

rpm -e mariadb-server --nodeps

3.2. 解压缩mysql离线安装包

[root@ga-sit-cssjgj-db-01u app]# tar xvf mysql-8.0.40-1.el8.aarch64.rpm-bundle.tar

逐个安装,命令如下:

必须安装

[root@ga-sit-cssjgj-db-01u app]# rpm -ivh mysql-community-common-8.0.40-1.el8.aarch64.rpm

[root@ga-sit-cssjgj-db-01u app]# rpm -ivh mysql-community-client-plugins-8.0.40-1.el8.aarch64.rpm

[root@ga-sit-cssjgj-db-01u app]# rpm -ivh mysql-community-libs-8.0.40-1.el8.aarch64.rpm 

[root@ga-sit-cssjgj-db-01u app]# rpm -ivh mysql-community-client-8.0.40-1.el8.aarch64.rpm 

[root@ga-sit-cssjgj-db-01u app]# rpm -ivh mysql-community-icu-data-files-8.0.40-1.el8.aarch64.rpm

[root@ga-sit-cssjgj-db-01u app]# rpm -ivh mysql-community-server-8.0.40-1.el8.aarch64.rpm

[root@ga-sit-cssjgj-db-01u app]# rpm -ivh mysql-community-devel-8.0.40-1.el8.aarch64.rpm

查看mysql

[root@ga-sit-cssjgj-db-01u app]# rpm -qa |grep mysql

mysql-community-libs-8.0.40-1.el8.aarch64
mysql-community-server-8.0.40-1.el8.aarch64
mysql-community-icu-data-files-8.0.40-1.el8.aarch64
mysql-community-client-plugins-8.0.40-1.el8.aarch64
mysql-community-devel-8.0.40-1.el8.aarch64
mysql-community-client-8.0.40-1.el8.aarch64
mysql-community-common-8.0.40-1.el8.aarch64
[root@ga-sit-cssjgj-db-01u app]#

3.3. 初始化mysql服务

修改配置文件建议使用去除注释精简版本配置

vim /etc/my.cnf

3.3.1. 去除注释精简版本

[mysqld]
innodb_buffer_pool_size = 4G

sort_buffer_size = 512M

read_rnd_buffer_size = 256M

thread_cache_size = 64

datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

bind-address=0.0.0.0

lower-case-table-names=1

3.3.2. 注释版本

# 有关如何更改设置的建议,请参阅
# http://dev.mysql.com/doc/refman/8.0/en/server-configuration-defaults.html

[mysqld]
# 设置读取缓存大小
innodb_buffer_pool_size = 4G

#调整排序缓存大小
sort_buffer_size = 512M

#临时表缓存大小
read_rnd_buffer_size = 256M

#线程缓存大小
thread_cache_size = 64
#
# 删除前导 # 并设置为最重要数据的 RAM 量
# 在MySQL中缓存。从专用服务器总 RAM 的 70% 开始,否则为 10%。
# innodb_buffer_pool_size = 128M
#
# 删除前导“#”以禁用二进制日志记录
# 二进制日志记录捕获备份之间的更改,并通过以下方式启用
# 违约。它的默认设置为 log_bin=binlog
# disable_log_bin
#
# 删除前导 # 以设置主要用于报表服务器的选项。
# 对于事务和快速的 SELECT,服务器默认值更快。
# 根据需要调整大小,进行实验以找到最佳值。
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
#
# 删除前导 # 以恢复为default_authentication_plugin的先前值,
# 这将增加与旧客户端的兼容性。有关背景信息,请参阅:
# https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_default_authentication_plugin
# default-authentication-plugin=mysql_native_password

datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
# 打开跳过权限检查,以方便修改密码
# skip-grant-tables

# 开启远程访问连接
bind-address=0.0.0.0

lower-case-table-names=1

3.4. 授权

chmod 644 /etc/my.cnf

3.5. 查看服务状态

命令:systemctl status mysqld

[root@ga-sit-cssjgj-db-01u app]# systemctl status mysqld

● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: inactive (dead)
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
[root@ga-sit-cssjgj-db-01u app]#

3.6. 启动服务

接下来要启动MySQL,通过执行以下命令启动:

方式1启动:systemctl start mysqld

或者使用一下方式启动

方式2启动:su -s /bin/bash mysql -c “/usr/sbin/mysqld --defaults-file=/etc/my.cnf”

在此我使用 systemctl start mysqld 方式启动,原因是命令行简单

注意:如果linux需要开启不区分大小写请使用下面的命令,其他的命令mysql8 不生效,方式3启动

mysqld --defaults-file=/etc/my.cnf --initialize --user=mysql --basedir=/var/lib/mysql --datadir=/var/lib/mysql --lower-case-table-names=1

启动过程并不会返回任何信息即为成功。

再次查询状态

[root@ga-sit-cssjgj-db-01u app]# systemctl status mysqld
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since Wed 2024-12-25 14:45:34 CST; 1min 10s ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 167040 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
 Main PID: 167133 (mysqld)
   Status: "Server is operational"
    Tasks: 40
   Memory: 926.8M
   CGroup: /system.slice/mysqld.service
           └─167133 /usr/sbin/mysqld

12月 25 14:45:22 ga-sit-cssjgj-db-01u systemd[1]: Starting MySQL Server...
12月 25 14:45:34 ga-sit-cssjgj-db-01u systemd[1]: Started MySQL Server

激活状态Active显示为active,则表示启动成功。

4. 配置MySQL

MySQL安装完成后需要对MySQL做基础配置,包括首次登录修改用户密码、数据文件位置调整、redo log大小与数量调整、undo 表空间调整、ibdata表空间调整、binlog+errorlog+slowlog+pid+socket等文件调整、性能参数调整,这些调整都可以通过修改my.cnf参数文件实现。

MySQL安装完成第一次启动MySQL服务后,会自动为MySQLroot用户生成一个随机初始化密码,并在MySQLerrorlog文件中记录下来,我们要找到它并用它登录MySQL,修改root用户密码后才能执行任何其它操作:

  • 找到初始化密码
[root@localhost MYSQL安装包]# grep password /var/log/mysqld.log

2023-07-31T06:52:18.907755Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: #SL7tAyY5ih)

4.1. SL7tAyY5ih)即为初始化密码,注意是冒号后面的所有字符都是密码

  • 使用上面的初始化密码登录MySQL

[root@localhost MYSQL安装包]# mysql -uroot -p

  • 修改root密码

使用初始化密码登录MySQL后只能执行修改密码的操作,其他任何操作都是不可能的,使用以下命令修改密码:

登录不了怎么办别急,早知道你输入不对密码,请先执行修改密码再进行登录,跳过此章节直接修改密码

mysql> alter user user() identified by 'LaoGeDB123!';

Query OK, 0 rows affected (0.02 sec)

密码修改成功后,执行以下命令查看MySQL基本信息:

mysql> status
--------------
mysql  Ver 8.1.0 for Linux on aarch64 (MySQL Community Server - GPL)

Connection id:		12
Current database:	
Current user:		root@localhost
SSL:			Not in use
Current pager:		stdout
Using outfile:		''
Using delimiter:	;
Server version:		8.1.0
Protocol version:	10
Connection:		Localhost via UNIX socket
Server characterset:	utf8mb4
Db     characterset:	utf8mb4
Client characterset:	utf8mb4
Conn.  characterset:	utf8mb4
UNIX socket:		/var/lib/mysql/mysql.sock
Binary data as:		Hexadecimal
Uptime:			25 min 43 sec

Threads: 2  Questions: 10  Slow queries: 0  Opens: 130  Flush tables: 3  Open tables: 46  Queries per second avg: 0.006
--------------

5. 修改密码

vim /etc/my.cnf

追加:skip-grant-tables

追加后如下:记得保存wq

[mysqld]
innodb_buffer_pool_size = 4G

sort_buffer_size = 512M

read_rnd_buffer_size = 256M

thread_cache_size = 64

datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

bind-address=0.0.0.0

lower-case-table-names=1
#追加的内容
skip-grant-tables

重启服务:systemctl restart mysqld.service

mysql -u root -p //回车不需要密码

登录成功后执行如下注意查看plugin 是caching_sha2_password 跟别的mysql不一样别的是mysql_native_password

查看当前权限

mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> select host,user,plugin from user;
+-----------+------------------+-----------------------+
| host      | user             | plugin                |
+-----------+------------------+-----------------------+
| localhost | mysql.infoschema | caching_sha2_password |
| localhost | mysql.session    | caching_sha2_password |
| localhost | mysql.sys        | caching_sha2_password |
| localhost | root             | caching_sha2_password |
+-----------+------------------+-----------------------+
4 rows in set (0.00 sec)

mysql>

授权远程访问

mysql> update user set host="%" where user='root';

mysql> select host,user,plugin from user;
+-----------+------------------+-----------------------+
| host      | user             | plugin                |
+-----------+------------------+-----------------------+
| %         | root             | caching_sha2_password |
| localhost | mysql.infoschema | caching_sha2_password |
| localhost | mysql.session    | caching_sha2_password |
| localhost | mysql.sys        | caching_sha2_password |
+-----------+------------------+-----------------------+
4 rows in set (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)

你的密码:我设置为Aa123456,根据你实际的情况设置

注意:

mysql_native_password,mysql8.x版本必须使用这种模式,否则navicate无法正确连接

use mysql;
ALTER USER 'root'@'%' IDENTIFIED WITH caching_sha2_password BY '你的密码';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';
flush privileges;

或者使用这个方式
update user set authentication_string=password("Aa123456"),plugin='caching_sha2_password' where user='root';

将/etc/my.cnf 中的 skip-grant-tables 增加注释,重启 mysqld 服务;

如果报错ERROR 1396,请看下面

mysql> ALTER USER 'root'@'%' IDENTIFIED WITH caching_sha2_password BY 'Aa123456';
ERROR 1396 (HY000): Operation ALTER USER failed for 'root'@'%'
mysql> update user set authentication_string='' where user='root';
Query OK, 0 rows affected (0.00 sec)
Rows matched: 1  Changed: 0  Warnings: 0
mysql> ALTER USER 'root'@'%' IDENTIFIED WITH caching_sha2_password BY 'Aa123456';

mysql> flush privileges;

6. 常用服务器命令

启动mysql服务:

systemctl start mysqld.service

停止mysql服务

systemctl stop mysqld.service

重启mysql服务

systemctl restart mysqld.service

查看mysql服务当前状态

systemctl status mysqld.service

设置mysql服务开机自启动

systemctl enable mysqld.service

停止mysql服务开机自启动

systemctl disable mysqld.service

7.其他版本安装

参考我以前的Linux彻底卸载删除Mysql和安装mysql及docker安装和配置

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

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

相关文章

InfoNCE Loss详解(上)

引言 InfoNCE对比学习损失是学习句嵌入绕不开的知识点,本文就从头开始来探讨一下它是怎么来的。 先验知识 数学期望与大数定律 期望(expectation,expected value,数学期望,mathematical expectation)是随机变量的平均值&#…

机器人C++开源库The Robotics Library (RL)使用手册(一)

强大的、完整的C机器人开源库 1、是否可以免费商用?2、支持什么平台?3、下载地址4、开始! 1、是否可以免费商用? Robotics Library(RL)是一个独立的C库,用于机器人运动学、运动规划和控制。它涵…

超快速的路径优化IKD-SWOpt:SHIFT Planner 中增量 KD 树滑动窗口优化算法详解

IKD-SWOpt:SHIFT Planner 中增量 KD 树滑动窗口优化算法详解 今天本博主王婆卖瓜自卖自夸😄,介绍自己paper中的算法,本算法已经持续开源中(部分关键内容)Github,之前很多读者朋友一直说要详细讲讲路径优化算法&#x…

meshy的文本到3d的使用

Meshy官方网站: 中文官网: Meshy官网中文站 ​编辑 Opens in a new window ​编辑www.meshycn.com Meshy AI 中文官网首页 英文官网: Meshy目前似乎还没有单独的英文官网,但您可以在中文官网上找到英文界面或相关英文资料。 链…

浅谈某平台多场景下反爬虫与风控业务

文章目录 1. 写在前面2. 内容反爬3. 账号风控3. 接口验签 【🏠作者主页】:吴秋霖 【💼作者介绍】:擅长爬虫与JS加密逆向分析!Python领域优质创作者、CSDN博客专家、阿里云博客专家、华为云享专家。一路走来长期坚守并致…

UI页面布局分析(4)- 贵族 特权分页列表

引言 在现在移动应用中,展示用户特权的UI设计不仅是吸引用户的关键手段,更是提升产品体验的重要部分。特别是在直播场景中,贵族特权作为一种高价值用户身份的象征,通常需要通过精致的页面和流程的交互来突出其重要性和独特性。 …

计算机网络实验室建设方案

一、计算机网络实验室拓扑结构 计算机网络综合实验室解决方案,是面向高校网络相关专业开展教学实训的综合实训基地解决方案。教学实训系统采用 B/S架构,通过公有云教学实训平台在线学习模式,轻松实现网络系统建设与运维技术的教学…

D类音频应用EMI管理

1、前言 对于EMI,首先需要理解天线。频率和波长之间的关系,如下图所示。   作为有效天线所需的最短长度是λ/4。在空气中,介电常数是1,但是在FR4或玻璃环氧PCB的情况下,介电常数大约4.8。这种效应会导致信号在FR4材…

若依框架之简历pdf文档预览功能

一、前端 (1)安装插件vue-pdf:npm install vue-pdf (2)引入方式:import pdf from "vue-pdf"; (3)components注入方式:components:{pdf} (4&…

lua-debug for Sublime

目标 Sublime 也支持 lua-debug,操作体验与 VSCode 一致。 优势 执行效率高,不掉帧 可随时开启 配置简单,一份配置兼容 VSCode 和 Sublime 安装 要求 Sublime 4 的版本(注:从 Sublime 3 升到 4 的不算,…

手机h5加桌面图标

手机h5应用1&#xff0c;网址浏览器添加到桌面&#xff0c;修改图标 关键代码 <!-- 手机h5加桌面图标 --> <!-- 安卓平台 chrome --> <link relapple-touch-icon-precomposed href<% BASE_URL %>logonew.png> <meta name"mobile-web-app-capab…

开发场景中Java 集合的最佳选择

在 Java 开发中&#xff0c;集合类是处理数据的核心工具。合理选择集合&#xff0c;不仅可以提高代码效率&#xff0c;还能让代码更简洁。本篇文章将重点探讨 List、Set 和 Map 的适用场景及优缺点&#xff0c;帮助你在实际开发中找到最佳解决方案。 一、List&#xff1a;有序存…

acitvemq AMQP:因为消息映射策略配置导致的MQTT接收JMS消息乱码问题 x-opt-jms-dest x-opt-jms-msg-type

使用ActiveMQ&#xff08;5.14.5&#xff09;作消息系统服务的场景下&#xff0c; 当我用Apache Qpid Proton发送消息(使用AMQP协议)发送JMS消息&#xff0c;用Paho MQTT接收消息的时候&#xff0c; 收到的消息前面总是有一串乱码&#xff0c;大概就是这样&#xff1a; 4Sp?AS…

apisix的hmac-auth认证

目录 1、apisix的hmac认证Authorization头信息 2、signature的lua生成源码 3、java生成签证的简单示例 4、postman调用如下 apisix的hmac-auth认证&#xff0c;介绍可以看官方文档 hmac-auth | Apache APISIX -- Cloud-Native API Gateway 照着官方文档&#xff0c;发现生…

Webpack在Vue CLI中的应用

webpack 作为目前最流行的项目打包工具&#xff0c;被广泛使用于项目的构建和开发过程中&#xff0c;其实说它是打包工具有点大材小用了&#xff0c;我个人认为它是一个集前端自动化、模块化、组件化于一体的可拓展系统&#xff0c;你可以根据自己的需要来进行一系列的配置和安…

uniapp 前端解决精度丢失的问题 (后端返回分布式id)

原因&#xff1a; 后端使用分布式id, id为19位数&#xff0c;导致精度丢失 &#xff0c;前端解决方法 这个是通过浏览器请求回来的数据&#xff0c;这个时候id 数据已经丢失了&#xff0c;在数据库查询不到&#xff0c;在调获详情接口的时候会有问题 实际的&#xff1a; 解决…

外网访问 Docker 容器的可视化管理工具 DockerUI

DockerUI 是一个 docker 容器镜像的可视化图形化管理工具&#xff0c;DockerUI 可以用来轻松构建、管理和维护 docker 环境。让用户维护起来更方便。 本文就介绍如何安装使用 DockerUI 并结合路由侠内网穿透来访问 DockerUI。 第一步&#xff0c;安装 DockerUI 1&#xff0c;…

Docker安装和使用RabbitMQ

Docker安装和使用RabbitMQ 1、拉取镜像2、运行Docker容器3、控制台界面 1、拉取镜像 docker pull rabbitmq:3-management2、运行Docker容器 docker run \-e RABBITMQ_DEFAULT_USERjagochan \-e RABBITMQ_DEFAULT_PASSjagochan \--name mq \--hostname mq \-p 15672:15672 \-p…

STM32F103RCT6学习之五:ADC

1.ADC基础 ADC&#xff08;Analog-Digital Converter&#xff09;模拟-数字转换器ADC可以将引脚上连续变化的模拟电压转换为内存中存储的数字变量&#xff0c;建立模拟电路到数字电路的桥梁12位逐次逼近型ADC&#xff0c;1us转换时间 输入电压范围&#xff1a;0~3.3V&#xff…

Python学习(2):注释、数字、文本、列表

1 关于注释 Python 使用井号#作为单行注释的符号&#xff0c; 使用三个连续的单引号’’或者三个连续的双引号"""注释多行内容。 2 数字 2.1 基本运算 解释器像一个简单的计算器&#xff1a;你可以输入一个表达式&#xff0c;它将给出结果值。 表达式语法很直观…