Linux系统下常用软件安装汇总,包括mysql,java,git,redis等
01.环境搭建
1.安装列表
-
MySQL 5.7.11
-
Java 1.8
-
Apache Maven 3.6+
-
tomcat8.5
-
git
-
Redis
-
Nginx
-
python
-
docker

2.安装mysql
1.拷贝mysql安装文件到Linux的某个目录下
2.解压Linux安装包:tar -xvzf mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz
3.进入解压后的目录:cd mysql-5.7.32-linux-glibc2.12-x86_64/
4.创建mysql文件夹:mkdir -p /usr/local/mysql
5.拷贝解压后所有文件到mysql中:cp -rf * /usr/local/mysql
6.创建组:groupadd mysql
7.创建用户并设置组:useradd -r -g mysql mysql
8.创建mysql数据目录:mkdir -p /data/mysql
9.给/data/mysql赋值权限:chown mysql:mysql -R /data/mysql
10.编辑配置文件:vi /etc/my.cnf ,编辑内容具体见下。
11.进入mysql可执行目录:cd /usr/local/mysql/bin/
12.执行命令:./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize
13.查看密码:cat /data/mysql/mysql.err
14.拷贝文件:cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
# 以下步骤为重置数据库密码
15.修改密码:mysql -u root -p (密码)
16.进行重置密码:set password=password('123456');
17.退出:exit
18.使用新密码登录:mysql -u root -p (新密码)
# 以下操作将修改user表中的数据
19.进入mysql数据库:use mysql ;
20.修改user表中的Host:update user set Host='%' where user='root';
21.刷新:flush privileges ;# 使用Navicat进行连接数据库进行测试
22.查看Linux系统IP:ifconfig
23.在Navicat中输入Linux系统的IP,数据库用户名、密码以及端口,点击测试连接 。提示连接成功就证明连接成功 。
my.cnf内容如下
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
mysql服务无法启动执行如下
yum install -y mariadb-server
systemctl unmask firewalld.service
systemctl start mariadb.service
查看端口:firewall-cmd --query-port=3306/tcp
开启端口:firewall-cmd --add-port=3306/tcp
3.安装Java
-
上传压缩包:jdk-8u271-linux-x64.tar.gz
-
解压:tar -xvzf jdk-8u271-linux-x64.tar.gz
-
将解压后的目录放到一个目录下:mv jdk1.8.0_271 /opt/jdk1.8
-
设置Java环境变量:vim /etc/profile
-
使配置生效:source /etc/profile
-
查看Java配置是否生效 :java -version
4.安装maven
-
上传压缩包:apache-maven-3.6.3-bin.zip
-
解压maven压缩包:unzip apache-maven-3.6.3-bin.zip
-
将解压后的目录放到一个目录下:mv apache-maven-3.6.3 /opt/
-
设置环境变量
export MAVEN_HOME=/opt/apache-maven-3.6.3
export MAVEN_HOME
export PATH=$PATH:$MAVEN_HOME/bin
5.使配置生效:source /etc/profile
6.查看Maven配置是否生效 :mvn -version
7.创建Maven本地资源库:mkdir -p /webapp/repository
8.设置maven的本地资源库:vim ./conf/settings.xml ,大约在53行
5.部署Tomcat
-
上传压缩包:apache-tomcat-8.5.57.tar.gz
-
解压tomcat压缩包:tar -xvzf apache-tomcat-8.5.57.tar.gz
-
将解压后的目录放到一个目录下:mv apache-tomcat-8.5.57 /opt/tomcat8
-
进入tomcat的conf目录:cd /opt/tomcat8/conf
-
修改tomcat启动端口(根据需要):vim server.xml ,具体内容见下 。
-
修改完后保存退出 。
-
进入tomcat8的bin目录 :cd ../bin/
-
启动tomcat服务:./startup.sh
-
在浏览器中输入ip:port能出现Apache Tomcat提示即部署成功 。
server.xml的部分内容:<Service name="Catalina"> <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> <!-- 将port后的端口修改为实际端口 --!><Engine name="Catalina" defaultHost="test.com"> <!-- 修改当前Engine,默认主机是,www.test.com --> <Realm className="org.apache.catalina.realm.LockOutRealm"> <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/> </Realm> # Realm组件,定义对当前容器内的应用程序访问的认证,通过外部资源UserDatabase进行认证 <Host name="test.com" appBase="/web" unpackWARs="true" autoDeploy="true"> <!-- 定义一个主机,域名为:test.com,应用程序的目录是/web,设置自动部署,自动解压 --> <Alias>www.test.com</Alias> <!-- 定义一个别名www.test.com,类似apache的ServerAlias --> <Context path="" docBase="www/" reloadable="true" /> <!-- 定义该应用程序,访问路径"",即访问www.test.com即可访问,网页目录为:相对于appBase下的www/,即/web/www,并且当该应用程序下web.xml或者类等有相关变化时,自动重载当前配置,即不用重启tomcat使部署的新应用程序生效 --> <Context path="/bbs" docBase="/web/bbs" reloadable="true" /> <!-- 定义另外一个独立的应用程序(虚拟主机),访问路径为:www.test.com/bbs,该应用程序网页目录为/web/bbs --> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="/web/www/logs" prefix="www_access." suffix=".log" pattern="%h %l %u %t "%r" %s %b" /> <!-- 定义一个Valve组件,用来记录tomcat的访问日志,日志存放目录为:/web/www/logs如果定义为相对路径则是相当于$CATALINA_HOME,并非相对于appBase,这个要注意。定义日志文件前缀为www_access.并以.log结尾,pattern定义日志内容格式,具体字段表示可以查看tomcat官方文档 --> </Host> <Host name="manager.test.com" appBase="webapps" unpackWARs="true" autoDeploy="true"> <!-- 定义一个主机名为man.test.com,应用程序目录是$CATALINA_HOME/webapps,自动解压,自动部署 --> <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="172.16.100.*" /> <!-- 定义远程地址访问策略,仅允许172.16.100.*网段访问该主机,其他的将被拒绝访问 --> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="/web/bbs/logs" prefix="bbs_access." suffix=".log" pattern="%h %l %u %t "%r" %s %b" /> <!-- 定义该主机的访问日志 --> </Host> </Engine> </Service>
6.安装git
git安装在Linux上比较简单,最简单的方式就是通过yum安装(以Centos为例):
通过yum进行安装:yum install git
安装后验证,查看版本号:git --version
虽然上面能安装成功,但是存在一个问题就是安装好的版本比较老,如果想使用比较高的版本,可到GitHub上去下载,然后进行编译安装 。
#若已经安装git,可以通过yum命令进行卸载 。
卸载git: yum remove git#下面通过下载最新版编译安装
1.安装编译源码前所需依赖:yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
2.从GitHub上下载最新版:wget https://github.com/git/git/archive/v2.17.0.tar.gz ;
3.将下载后的包进行解压缩: tar -zxvf v2.17.0.tar.gz
4.进入git文件夹:cd git-2.17.0
5.配置路径:./configure --prefix=/usr/local/git
5.进行编译:make
6.安装git到指定路径: make install
7.编辑配置文件: vim /etc/profile ,在底部加上git相关配置信息:PATH=$PATH:/usr/local/git/bin ,保存退出。
8.输入验证命令:git --version
若出现版本号即证明安装成功
7.安装Redis
1.下载redis安装包:wget https://download.redis.io/releases/redis-6.2.2.tar.gz
2.进行解压缩:tar xzf redis-6.2.2.tar.gz
3.将解压目录拷贝到指定目录(可根据实际需要,可忽略):mv /tools/redis-5.0.7 /usr/local/redis
4.进入指定目录: cd /usr/local/redis
5.配置路径: ./configure --prefix=/usr/local/nginx
5.进行编译:make
6.进行安装:make install
7.启动Redis:/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
8.安装nginx
1.安装依赖包:yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel
2.下载nginx安装包: wget https://nginx.org/download/nginx-1.9.9.tar.gz
3.进行解压缩:tar xzf nginx-1.9.9.tar.gz
4.进入目录: cd nginx-1.9.9
5.配置路径: ./configure --prefix=/usr/local/nginx
6.进行编译:make
7.进行安装:make install
8.启动nginx: ./usr/local/nginx/sbin/nginx
9.安装python
1.安装python3所需的依赖包:yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
2.下载nginx安装包: wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tgz
3.进行解压缩:tar xzf Python-3.6.8.tgz
4.进入目录: cd Python-3.6.8
5.配置路径: ./configure --prefix=/usr/local/python3
6.进行编译:make
7.进行安装:make install
8.添加python软连接:ln -s /usr/local/python3/bin/python3.6 /usr/bin/python3
9.添加pip软连接: ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
10:输入python命令验证: python3(进入的python编辑器显示版本号正确即说明安装正确 )
10.安装docker
1.安装docker依赖包: yum install -y yum-utils device-mapper-persistent-data lvm2
2.设置阿里云镜像源: sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3.安装docker-CE: yum install docker-ce
4.设置开启自启动: systemctl enable docker
5.启动docker服务:systemctl start docker
6.添加docker用户组(可选):groupadd docker
7.添加当前用户到docker组: usemod -aG docker $USER备注:docker需要用户具有sudo权限,若不具备root权限,为了避免每次都输入sudo,可把当前(root)用户加入docker组 。具体见第六步和第七步 。
相关文章:
Linux系统下常用软件安装汇总,包括mysql,java,git,redis等
01.环境搭建 1.安装列表 MySQL 5.7.11 Java 1.8 Apache Maven 3.6 tomcat8.5 git Redis Nginx python docker 2.安装mysql 1.拷贝mysql安装文件到Linux的某个目录下 2.解压Linux安装包:tar -xvzf mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz 3.进入解压后…...
【Linux】——期末复习题(一)
🎃个人专栏: 🐬 算法设计与分析:算法设计与分析_IT闫的博客-CSDN博客 🐳Java基础:Java基础_IT闫的博客-CSDN博客 🐋c语言:c语言_IT闫的博客-CSDN博客 🐟MySQL:…...
【论文阅读】Speech Driven Video Editing via an Audio-Conditioned Diffusion Model
DiffusionVideoEditing:基于音频条件扩散模型的语音驱动视频编辑 code:GitHub - DanBigioi/DiffusionVideoEditing: Official project repo for paper "Speech Driven Video Editing via an Audio-Conditioned Diffusion Model" paper&#…...
【华为 ICT HCIA eNSP 习题汇总】——题目集4
1、(多选)网络中出现故障后,管理员通过排查发现某台路由器的配置被修改了,那么管理员应该采取哪些措施来避免这种状况再次发生? A、管理员应该通过配置 ACL 来扩展只有管理员能够登录设备 B、管理员应该在路由的管理端…...
hadoop-common: CMake failed with error code 1
问题 在编译hadoop源码时遇到如下错误 hadoop-common: CMake failed with error code 1 看了这个错误表示一脸懵逼 排查 在mvn 的命令中增加 -X 和 -e mvn clean package -e -X -Pdist,native -DskipTests -Dmaven.javadoc.skip -Dopenssl.prefix/usr/local/bin/openssl 在…...
【面试】-科大讯飞日常实习面试
科大讯飞日常实习面试 提问的问题 面试30min,基本就是介绍项目以及提问java八股文,没有算法题 java保证线程安全的方法 需要根据具体场景选择合适的方法来保证线程安全。java中的异步请求如何实现你的SpringBoot项目怎么匹配在线人数请说出spring springMVC springboot之间的…...
MySQL 数据加密
MySQL 数据加密主要用于保护存储在数据库中的敏感信息,如用户密码、个人身份信息等。MySQL 提供了多种数据加密方法,主要包括: 对称加密: AES_ENCRYPT() 和 AES_DECRYPT() 函数:MySQL 支持使用高级加密标准(…...
风丘科技为您提供完整的ADAS测试方案
一 方案概述 随着5G通讯与互联网的快速发展,智能汽车和ADAS辅助系统的研究与发展在世界范围内也在如火如荼地进行。风丘科技紧跟时代脚步,经多年积累沉淀,携手整车厂与高校共同研发打造出了一套完整且适用于国内ADAS测试的系统方案。 | ADAS…...
深入理解Rust基本类型
文章目录 一、概述二、数值类型2.1、整数类型2.2、浮点类型2.3、数字运算2.4、位运算2.5、序列(Range)2.6、有理数和复数 三、字符、布尔、单元类型3.1、字符类型3.2、布尔类型(bool)3.3、单元类型 团队博客: 汽车电子社区 一、概…...
cloudflare加速方法
一、使用Cloudflare优速域名或IP,实现国内访问加速 二、使用境外CN2、GIA等直连联网的VPS:如华纳云、彩红云等(未测试) 三、页面托管方案: 四、cloudflare合作伙伴计划:自定义cdn节点、dnspod提供的dns解析…...
密码学学习笔记(二十四):TCP/IP协议栈
TCP/IP协议栈的基础结构包括应用层、传输层、网络层、数据链路层和物理层。 应用层 应用层位于TCP/IP协议栈的最顶层,是用户与网络通信的接口。这一层包括了各种高级应用协议,如HTTP(用于网页浏览)、FTP(用于文件传输…...
软件测试阶段简介_单元测试、集成测试、配置项测试、系统测试
文章目录 前言一、软件测试“V”模型二、单元测试三、集成测试四、配置项测试五、系统测试总结 前言 一般来说,按照软件的研制阶段划分,软件测试可分为单元测试、集成测试、配置项测试、系统测试等。本文将对上述各测试阶段进行逐一介绍。 一、软件测试…...
AcWing 1204.错误票据(读取未知个数数据的新方法)
[题目概述] 某涉密单位下发了某种票据,并要在年终全部收回。每张票据有唯一的ID号。全年所有票据的ID号是连续的,但ID的开始数码是随机选定的。 因为工作人员疏忽,在录入ID号的时候发生了一处错误,造成了某个ID断号,另…...
项目上线存在的缓存问题以及存在的debugger和console.log等问题
下载uglifyjs-webpack-plugin插件 在vue.config文件中进行配置 publicPath: process.env.NODE_ENV production ? ./ : /,outputDir: n-sim-ipc-manage-build,productionSourceMap: false,configureWebpack: config > {//打包文件增加hashconfig.output.filename js/[nam…...
均线和布林线这样的关系,WeTrade众汇实例这样使用
在后台经常有交易者咨询:“我可以用加权平均线或指数代替移动平均线吗?”理论上,任何平均值都适合绘制BB。在回答这个问题之前,为了稳妥起见,WeTrade众汇通过对各种均线对比分析,却得出这样结论:经典均线是构建参考点最简单、最准…...
C++中的区块链与加密货币开发
区块链和加密货币是当前科技领域中备受关注的热门话题。C作为一种高效的编程语言,被广泛应用于区块链和加密货币的开发。在本篇文章中,我将介绍C在区块链和加密货币开发中的重要性以及其应用方面。 区块链开发框架:C提供了多种区块链开发框架…...
【云略】2023年新茶饮行业社媒营销洞察报告
(因篇幅有限,推文仅展示部分内容) 2023新茶饮行业卷的比往年更厉害。 在整体市场环境快速增长的情况下,新茶饮品牌纷纷开始拼产品、抢联名、赶上市,搞下沉,整个行业进入到一个新的博弈阶段。 2023年蜜雪冰城…...
19. C++ static关键字
1. static关键字 不考虑类的情况 隐藏-所有不加static的全局变量和函数具有全局可见性,可以在其他文件中使用,加了之后只能在该文件所在的编译模块中使用,即内部连接默认初始化为0,包括未初始化的全局静态变量与局部静态变量&am…...
thinkphp6 模糊查找json下的字段值
写法: where(json的字段->json下的字段) sql生成json_extract(json的字段,$.json下的字段1.json下的字段2) 可以加上like where(‘‘json的字段->json下的字段, ‘like’, ‘%’. keyword .’%’) sql生成json_extract(json的字段,$.js…...
链表存数相加算法(leetcode第2题)
题目描述: 给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这…...
深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录
ASP.NET Core 是一个跨平台的开源框架,用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录,以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...
前端倒计时误差!
提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...
蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练
前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1):从基础到实战的深度解析-CSDN博客,但实际面试中,企业更关注候选人对复杂场景的应对能力(如多设备并发扫描、低功耗与高发现率的平衡)和前沿技术的…...
【python异步多线程】异步多线程爬虫代码示例
claude生成的python多线程、异步代码示例,模拟20个网页的爬取,每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程:允许程序同时执行多个任务,提高IO密集型任务(如网络请求)的效率…...
C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。
1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj,再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...
Selenium常用函数介绍
目录 一,元素定位 1.1 cssSeector 1.2 xpath 二,操作测试对象 三,窗口 3.1 案例 3.2 窗口切换 3.3 窗口大小 3.4 屏幕截图 3.5 关闭窗口 四,弹窗 五,等待 六,导航 七,文件上传 …...
【JavaSE】多线程基础学习笔记
多线程基础 -线程相关概念 程序(Program) 是为完成特定任务、用某种语言编写的一组指令的集合简单的说:就是我们写的代码 进程 进程是指运行中的程序,比如我们使用QQ,就启动了一个进程,操作系统就会为该进程分配内存…...
CSS | transition 和 transform的用处和区别
省流总结: transform用于变换/变形,transition是动画控制器 transform 用来对元素进行变形,常见的操作如下,它是立即生效的样式变形属性。 旋转 rotate(角度deg)、平移 translateX(像素px)、缩放 scale(倍数)、倾斜 skewX(角度…...
MinIO Docker 部署:仅开放一个端口
MinIO Docker 部署:仅开放一个端口 在实际的服务器部署中,出于安全和管理的考虑,我们可能只能开放一个端口。MinIO 是一个高性能的对象存储服务,支持 Docker 部署,但默认情况下它需要两个端口:一个是 API 端口(用于存储和访问数据),另一个是控制台端口(用于管理界面…...
渗透实战PortSwigger靶场:lab13存储型DOM XSS详解
进来是需要留言的,先用做简单的 html 标签测试 发现面的</h1>不见了 数据包中找到了一个loadCommentsWithVulnerableEscapeHtml.js 他是把用户输入的<>进行 html 编码,输入的<>当成字符串处理回显到页面中,看来只是把用户输…...
