信创改造-龙蜥操作系统搭载MySql、Tomcat等服务

龙蜥操作系统
Anolis OS 8 是 OpenAnolis 社区推出的完全开源、中立、开放的发行版,它支持多计算架构,也面向云端场景优化,兼容 CentOS 软件生态。Anolis OS 8 旨在为广大开发者和运维人员提供稳定、高性能、安全、可靠、开源的操作系统服务。
Apache Tomcat官网: Anolis系统中离线安装Tomcat与Linux一致,Tomcat下载到本地,上传解压运行即可。
在这里插入图片描述

MySql官网
Anolis系统中离线安装MySql数据库,与Linux安装方式基本一致。
安装版本:mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

进入安装流程

创建目录

mkdir -p /server/tools
mkdir -p /opt/mysql
mkdir -p /data/mysql/mysql3306/{data,logs}
cd /server/tools #进入到该目录

解压安装包

tar zxf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

移动到指定目录

mv mysql-5.7.26-linux-glibc2.12-x86_64  /opt/mysql/mysql-5.7.26

创建软连接

ln -s /opt/mysql/mysql-5.7.26/ /usr/local/mysql

编辑配置文件

vi /data/mysql/mysql3306/my3306.cnf
[client]
user=mysql
port= 3306
socket= /data/mysql/mysql3306/mysql.sock
[mysqld]
port= 3306
user=mysql
server_id= 1
basedir=/usr/local/mysql
datadir=/data/mysql/mysql3306/data
log_error=/data/mysql/mysql3306/logs/error.log
log_bin=/data/mysql/mysql3306/logs/mysql-bin
binlog_format=row
gtid_mode=on
enforce_gtid_consistency=true
log_slave_updates=1
max_connections=1024
wait_timeout=60
sort_buffer_size=2M
max_allowed_packet=32M
join_buffer_size=2M
innodb_buffer_pool_size=128M
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=32M
innodb_log_file_size=128M
innodb_log_files_in_group=2
binlog_cache_size=2M
max_binlog_cache_size=8M
max_binlog_size=512M
expire_logs_days=7
slow_query_log=on
slow_query_log_file=/data/mysql/mysql3306/logs/slow.log
long_query_time=0.5
log_queries_not_using_indexes=1

初始化数据库

初始化数据库之前如果/data/mysql/mysql3306路径下有data文件夹,则需要删除,否则初始化失败。

/usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/mysql3306/my3306.cnf --initialize-insecure --user=mysql --basedir=/usr/local/mysql  --datadir=/data/mysql/mysql3306/data

加入环境变量

vim /etc/profile #vim编辑
export PATH="/usr/local/mysql/bin:$PATH"

启动数据库

mysqld --defaults-file=/data/mysql/mysql3306/my3306.cnf &

查看是否启动成功

在这里插入图片描述

netstat -lntup
启动数据库报错

在这里插入图片描述

2025-01-13T09:19:04.303142Z 0 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist
2025-01-13T09:19:04.303159Z 0 [ERROR] Fatal error: Failed to initialize ACL/grant/time zones structures or failed to remove temporary table files.
解决报错
vim /etc/my.cnf
datadir=/var/lib/mysql/data删除data目录中的内容
rm -rf data  //在mysql安装目录下执行
mkdir data  

在这里插入图片描述

连接数据库

因为初始化的时候设置了–initialize-insecure,所以登录时不需要密码。

第一次连接没有密码,直接敲回车:mysql -u root -p

在这里插入图片描述

存在问题

启动数据库时只能使用:mysqld --defaults-file=/data/mysql/mysql3306/my3306.cnf &
不能使用用:service mysqld start命令,使用该命令会报如下错误:

 Starting MySQL.Logging to '/usr/local/mysql/data/anolis.err'.ERROR! The server quit without updating PID file (/usr/local/mysql/data/anolis.pid).
解决办法
  1. 将配置文件移动到mysql的安装目录
    在这里插入图片描述
  2. 修改配置文件中的路径
    在这里插入图片描述
  3. 设置通过命令启动: mv /opt/mysql/mysql-5.7.26/support-files/mysql.server /etc/init.d/mysqld
  4. 设置用户权限
# 增加用户和组
[root@anolis ~]# groupadd mysql
[root@anolis ~]# useradd -r -g mysql mysql
# 设置对应的mysql文件权限
# 这里因为/usr/local/mysql/data是创建的/opt/mysql/mysql-5.7.26/的软链接,所以两个地址实际上是一个
chown mysql:mysql -R /opt/mysql/mysql-5.7.26/
chmod -R 755 /usr/local/mysql/data
  1. 初始化数据库
# 进入mysql安装目录
cd /usr/local/mysql/data
# 删除data
rm -rf data/
# 初始化,如果是--initialize的话登录就需要输入密码
./bin/mysqld --defaults-file=/usr/local/mysql/my.cnf --initialize-insecure --user=mysql
# 初始化完成后可进行启动数据库
[root@anolis mysql]# service mysqld restartERROR! MySQL server PID file could not be found!
Starting MySQL.. SUCCESS! 
登录数据库
[root@anolis mysql]# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.26-log MySQL Community Server (GPL)Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.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 -ADatabase changed
# 设置数据库密码
mysql>  update user set authentication_string=password("数据库密码") where user="root";
Query OK, 1 row affected, 1 warning (0.02 sec)
Rows matched: 1  Changed: 1  Warnings: 1
# 刷新,否则可能不生效
mysql> flush privileges; 
Query OK, 0 rows affected (0.05 sec)
# 设置数据库远程访问
mysql> update user set host='%' where user='root';
Query OK, 1 row affected (0.02 sec)
Rows matched: 1  Changed: 1  Warnings: 0
# 刷新
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
# 退出
mysql> quit;Bye
设置MySQL开机自启

设置MySQL开机自启可以通过chkconfig命令来实现

# 添加到管理列表
chkconfig --add mysqld
# 设置开机自启动,或者通过chkconfig --level 2345 mysql on命令来指定在运行级2、3、4、5中开启MySQL服务
chkconfig mysqld on
# 查看设置状态
chkconfig --list mysqld
[root@anolis ~]# chkconfig --list mysqld
Note: This output shows SysV services only and does not include nativesystemd services. SysV configuration data might be overridden by nativesystemd configuration.If you want to list systemd services use 'systemctl list-unit-files'.To see services enabled on particular target use'systemctl list-dependencies [target]'.mysqld          0:off   1:off   2:on    3:on    4:on    5:on    6:off

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

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

相关文章

FPGA EDA软件的位流验证

位流验证,对于芯片研发是一个非常重要的测试手段,对于纯软件开发人员,最难理解的就是位流验证。在FPGA芯片研发中,位流验证是在做什么,在哪些阶段需要做位流验证,如何做?都是问题。 我们先整体的…

px、em 和 rem 的区别:深入理解 CSS 中的单位

文章目录 前言一、px - 像素 (Pixel)二、em - 相对父元素字体大小 (Ems)三、rem - 相对于根元素字体大小 (Root Ems)四、综合比较结语 前言 在CSS中,px、em和rem是三种用于定义尺寸(如宽度、高度、边距、填充等)的长度单位。它们各自有不同的…

【CI/CD构建】关于不小心将springMVC注解写在service层

背景 之前写一个接口的时候没有察觉到将RequestBody这个注解带到service层了。 今天提交代码的时候,插件没有检测到这个低级错误,导致试飞构建连maven编译都过不了,maven找不到程序包org.springframework.web.bind.annotation这个包 结果…

Oracle Dataguard(主库为双节点集群)配置详解(4):配置备库

Oracle Dataguard(主库为双节点集群)配置详解(4):配置备库 目录 Oracle Dataguard(主库为双节点集群)配置详解(4):配置备库一、为备库配置静态监听1、配置 li…

《深入理解Mybatis原理》Mybatis中的缓存实现原理

一级缓存实现 什么是一级缓存? 为什么使用一级缓存? 每当我们使用MyBatis开启一次和数据库的会话,MyBatis会创建出一个SqlSession对象表示一次数据库会话。 在对数据库的一次会话中,我们有可能会反复地执行完全相同的查询语句&…

win32汇编环境,窗口程序中单选框的一般操作示例

;运行效果 ;win32汇编环境,窗口程序中单选框的一般操作示例 ;比如在窗口程序中生成单选框,默认哪项选中,判断当前选中哪一项,让哪项选中,得到选中项的名称等 ;直接抄进RadAsm可编译运行。重点部分加备注。 ;以下是ASM文件 ;>&g…

从transformer到informer

Transformer和Informer都是深度学习领域中的模型架构,它们主要用于处理序列数据,如自然语言处理(NLP)和时间序列预测任务。 **Transformer**: Transformer模型最初在2017年由Google的研究者提出,它在NLP领…

hive知识体系

hive知识体系 hive知识体系 链接: 1Hive概览 链接: 2Hive表类型 链接: 3Hive数据抽样 链接: 4Hive计算引擎 链接: 5Hive存储与压缩 链接: 6Hive Sql 大全 链接: 6Hive Sql 大全-Hive 函数 链接: 6Hive Sql 大全-窗口函数 链接: 7Hive执行计划 链接: 8Hive SQL底层执行原理 链接…

优化 Azure Synapse Dedicated SQL Pool中的 SQL 执行性能的经验方法

在 Azure Synapse Dedicated SQL Pool中优化 SQL 执行涉及了解底层体系结构(例如分布和分区)、查询优化(例如避免不必要的子查询和联接),以及利用具体化视图和 PolyBase 等工具进行高效数据加载。 1.有效使用分布和分…

个人主页搭建全流程(Nginx部署+SSL配置+DCDN加速)

前言 最近开始准备秋招,打算做一个个人主页,以便在秋招市场上更有竞争力。 目前,现有的一些搭建主页的博文教程存在以下一些问题: 使用Github Page进行部署,这在国内访问容易受阻使用宝塔面板等框架,功能…

Spring MVC简单数据绑定

【图书介绍】《SpringSpring MVCMyBatis从零开始学(视频教学版)(第3版)》_springspringmvcmybatis从零开始 代码、课件、教学视频与相关软件包下载-CSDN博客 《SpringSpring MVCMyBatis从零开始学(视频教学版)(第3版&…

嵌入式系统Linux实时化(四)Xenomai应用开发测试

1、Xenomai 原生API 任务管理 Xenomai 本身提供的一系列多任务调度机制,主要有以下一些函数: int rt_task_create (RT_TASK task, const char name, int stksize, int prio, intmode) ; 任务的创建;int rt_task_start(RT_TASK task, void(entry)(void cookie), void cookie…

如何在Ubuntu上安装和配置Git

版本控制系统(VCS)是软件开发过程中不可或缺的工具之一,它帮助开发者跟踪代码变更、协作开发以及管理不同版本的项目。Git作为当前最流行的分布式版本控制系统,因其高效性和灵活性而广受青睐。本文将指导你如何在Ubuntu操作系统上…

[python] bisect_right

等价于C中的upper_bound bisect_right 函数介绍 在Python的 bisect 模块中, bisect_right (别名 bisect )用于在有序序列中查找插入点。插入点是在序列中插入元素后,序列仍保持有序的位置。 bisect_right 函数返回的插入点是在已…

Mac上安装Label Studio

在Mac上安装Anaconda并随后安装Label Studio,可以按照以下步骤进行: 1. 在Mac上安装Anaconda 首先,你需要从Anaconda的官方网站下载适用于Mac的安装程序。访问Anaconda官网,点击“Download Anaconda”按钮,选择适合M…

vscode开启调试模式,结合Delve调试器调试golang项目详细步骤

1.前期准备 (1).在vs code中的扩展程序中搜索并安装Go扩展程序 (2).安装 Delve 调试器 go install github.com/go-delve/delve/cmd/dlvlatest (3).打开vs code的命令面板,输入Go: Install/Update Tools,并单击该命令执行,安装或更新Go语…

SQL面试题1:连续登陆问题

引言 场景介绍: 许多互联网平台为了提高用户的参与度和忠诚度,会推出各种连续登录奖励机制。例如,游戏平台会给连续登录的玩家发放游戏道具、金币等奖励;学习类 APP 会为连续登录学习的用户提供积分,积分可兑换课程或…

爬山算法与模拟退火算法的全方面比较

一、基本概念与原理 1. 爬山算法 爬山算法是一种基于启发式的局部搜索算法,通过不断地向当前解的邻域中搜索更优解来逼近全局最优解。它的核心思想是,从当前解出发,在邻域内找到一个使目标函数值更大(或更小)的解作为新的当前解,直到找不到更优的解为止。 2.模拟退火算…

PostgreSQL 超级管理员详解

1. 什么是 PostgreSQL 超级管理员 PostgreSQL 超级管理员(superuser)是拥有数据库系统最高权限的用户。他们可以执行任何数据库操作,包括但不限于创建和删除数据库、用户、表空间、模式等。超级管理员权限是 PostgreSQL 中权限的最高级别。 …

安装本地测试安装apache-doris

一、安装前规划 我的服务器是三台麒麟服务器,2台跑不起来,这是我本地的,内存分配的也不多。 fe192.168.1.13 主数据库端口9030访问 8Gbe192.168.1.13内存4G 硬盘50be192.168.1.14内存4G 硬盘50be192.168.1.12内存4G 硬盘5013同时安装的fe和be 。 原理:192.168.1.13 服…