Linux安装部署项目实例
本次安装jdk,mysql,maven,redis,nginx,tomcat
安装之前先升级系统
使用命令:/bin/yum - y update
1.安装jdk
先建立一个项目的目录-jiaotong
在jiaotong目录下面建立6个子目录jdk,mysql,maven,redis,nginx,tomcat
进入jdk目录中:
cd jdk
把jdk压缩包上传到此目录中
rz jdk压缩包
解压此压缩包:
tar -zxvf jdk -C 解压的路径
tar -zxvf jdk压缩包名
配置环境变量,编辑环境变量文件
vi /etc/profile
在文件中增加:(java_home那里要填写实际的完整目录)退出编辑后保存
刷新环境变量
source /etc/profile
验证是否安装成功
java -version
出现版本信息则安装成功:
2.安装mysql
进入mysql文件夹,上传mysql压缩包,解压
tar -zxvf mysql-5.7.-.el7.x86_64.rpm-bundle.tar
然后依次安装
rpm -ivh mysql-community-common-5.7.-.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.-.el7.x86_64.rpm
rpm -ivh mysql-community-devel-5.7.-.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-5.7.-.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.-.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.-.el7.x86_64.rpm
安装到第五个时出错,缺少依赖对应的包
依次安装包
/bin/yum -y install perl.x86_64
/bin/yum install -y libaio.x86_64
/bin/yum -y install net-tools.x86_64
然后启动mysql
systemctl start mysqld.service
查看mysql的状态
systemctl status mysqld.service
获取mysql的root密码
mysql安装完成之后默认会生成root用户的密码,并且把密码存放在/var/log/mysqld.log该文件中,使用命令获取密码grep 'temporary password' /var/log/mysqld.log
grep 'temporary password' /var/log/mysqld.log
配置mysql
首先登陆mysql
mysql -uroot -p密码
然后修改root密码
SET PASSWORD = PASSWORD('Zc123456@');
修改权限,允许用户远程连接
进入mysql的数据库,因为mysql中有user表(user表存了用户的信息)
输入
select user,host from user;
可以看到host处都是localhost,说明现在只能通过主机连接,无法通过远程连接。
输入授权
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Zcreate@123';
flush privileges; #更新权限
再次查询权限:可以看到host处变成%,说明可通过远程连接。
然后退出mysql
mysql>quit;
遇到的问题:
通过本机mysql远程连接虚拟机的数据库连接失败,
尝试ping IP发现可以ping通;
尝试telnet端口,发现3306端口不通。
解决方法:
需要在防火墙配置将3306端口开放。
[root@localhost ~]# vi /etc/my.cnf
[root@localhost ~]# firewall-cmd --zone=public --add-port=/tcp --permanent(--permanent永久生效,没有此参数重启后失效)
success
重新载入
[root@localhost ~]# firewall-cmd --reload
success
查看
[root@localhost ~]# firewall-cmd --zone=public --query-port=/tcp
yes
之后用Navicat可连接上
修改mysql的目录存储权限,把日志文件放在/home/data中
[root@localhost mysql]# systemctl stop mysqld 停止mysql
[root@localhost mysql]# mkdir -p /home/data/ 创建一个/home/data/目录
[root@localhost mysql]# cp -rf /var/lib/mysql /home/data/ 复制文件到这个目录中
[root@localhost mysql]# vi /etc/my.cnf 编辑文件,修改配置
之后:
[root@localhost mysql]# setenforce 0 执行命令
[root@localhost mysql]# chown -R mysql:mysql /home/data/mysql 修改权限
[root@localhost mysql]# systemctl start mysqld 重启mysql
3.安装tomcat
进入目录,上传文件,解压
启动tomcat:
测试访问tomcat:
打开防火墙,使外部能访问(centos7下)
firewall-cmd --permanent --zone=public --add-port=/tcp #添加端口
firewall-cmd --reload #重新加载
firewall-cmd --list-all #查看一下
ping一下端口
在浏览器输入: http://10.1.30.129:8080。如在本机可以输入: http://localhost:8080, 出现tomcat的页面表示安装成功
4.安装maven
进入maven文件夹,上传文件,解压
tar -zxvf apache-maven-3.6.-bin.tar.gz
配置maven环境
vi /etc/profile
输入
export MAVEN_HOME=/用户名/soft/jiaotong/maven/apache-maven-3.6.1 --完整目录
export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH
刷新环境变量:
[root@localhost maven]# source /etc/profile
验证结果:
输入
mvn -version
5.安装nginx
把整个nginx文件压缩成zip格式,如果unzip命令不可用,就先安装命令
安装命令: /bin/yum install zip #提示输入时,请输入y;
安装命令:/bin/yum install unzip #提示输入时,请输入y;
进入jiaotong目录下,上传压缩包,解压文件到nginx目录下(没有这个目录就会自动创建一个)
[root@localhost jiaotong]# unzip nginx安装.zip -d nginx
删除安装包
rm nginx安装.zip
进入nginx文件目录下
安装gcc
进入gcc目录,一次性安装
rpm -Uvh *.rpm --nodeps --force
安装gcc-c++(与gcc安装方法一样)
安装完以后验证一下:
gcc -v
安装PCRE:
解压
[root@localhost nginx]# tar -zxvf pcre-8.35.tar.gz
编译安装
# cd pcre-8.35
# ./configure
# make
# make install
安装libtool
解压
tar -zxvf libtool-2.4..tar.gz
编译安装
# cd libtool-2.4.
# ./configure
# make
# make install
安装nginx
解压
tar -zxvf nginx-1.13..tar.gz
编译安装
# cd nginx-1.13.
#./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/pcre-8.35
# make
# make install
输入make时报错
这是因为缺少依赖对应包:
安装包:
/bin/yum install pcre-devel
/bin/yum install zlib zlib-devel
/bin/yum install openssl openssl-devel //也可用一条命令代替
/bin/yum install pcre-devel zlib zlib-devel openssl openssl-devel
Linux安装部署项目实例的更多相关文章
- Linux安装部署jdk+tomcat+mysql
Linux安装部署测试环境 1. JDK安装下载 安装 yum search jdk 找到合适的jdk版本,以下图中的版本为例 yum install java-1.8.0-openjdk.x86_6 ...
- Linux安装部署FTP服务器
Linux安装部署FTP服务器 本文章会将安装FTP服务器的步骤以及一些遇到的问题来记录下 因为项目中要与第三方对接数据,需要用到FTP服务器以提供他们每天上传数据,因为之前在本地的VMware虚 ...
- linux安装部署Nginx
两个参考地址: NGINX的百度百科:https://baike.baidu.com/item/nginx/3817705?fr=aladdin NGINX的中文网站:http://www.nginx ...
- Linux安装部署Redis(超级详细)
前言 网上搜索了一筐如何在Linux下安装部署Redis的文章,各种文章混搭在一起勉强安装成功了.自己也记录下,方便后续安装时候有个借鉴之处. Redis版本 5.0.4 服务器版本 Linux Ce ...
- Linux 安装部署 Redis
一.Redis介绍 Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类型相对更多 ...
- Linux安装部署
Linux桌面发行版 UbuntuCentOSRed heat LinuxOracle Linux 一.系统安装 1.系统分区 若手动分区swap和根分区必须创建,推荐创建boot分区. /----- ...
- GraphicsMagick 1.3.25 Linux安装部署
1.安装相关依赖包 yum install -y gcc libpng libjpeg libpng-devel libjpeg-devel ghostscript libtiff libtiff-d ...
- linux安装部署ftp图片服务器
1.安装http反向代理服务器.安装ftp文件传输组件vsftpd 详细安装及配置参见 https://blog.csdn.net/zhouym/article/details/100145964 2 ...
- Redis Linux 安装部署
Redis部署文档 Redis部署文档 准备软件: 开始部署: 解压tar包[root@localhost redis]# tar -zxvf redis-3.2.8.tar.gz 进入Redis ...
随机推荐
- Mysql 添加用户并授所有权
创建用户并授权GRANT ALL PRIVILEGES ON *.* TO 'caoxiaobo'@'%' IDENTIFIED BY 'Caoxiaobo0917!' WITH GRANT OPTI ...
- Content-type"是"application/json的作用
request中发送json数据用post方式发送Content-type用application/json;charset=utf-8方式发送的话,直接用springMVC的@RequestBody ...
- Idea 目录结构下有红色波浪线
问题截图: 解决方案: Build -> Rebuild Project
- [转帖]Zookeeper入门看这篇就够了
Zookeeper入门看这篇就够了 https://my.oschina.net/u/3796575/blog/1845035 Zookeeper是什么 官方文档上这么解释zookeeper,它是一个 ...
- stm32f103c8串口USART1发送多一字节
用UART写了一段Bootloader代码,遇到了一个很奇怪的现象. 代码如下:简单介绍一下就是先统一配置MCU的IO端口,然后配置串口参数,然后循环发送‘0’和'\r’.16进制是0x30 0x0d ...
- linux mount一个目录到另外一个目录
从linux内核2.4.0以后mount支持mount --bind 一个目录到另外一个目录 比如: [root@localhost wind]# mkdir test1 test2 dir3 m ...
- SessionChange
protected override void OnSessionChange(SessionChangeDescription changeDescription) { System.IO.File ...
- Python中的 x+=x 与 x = x + x的区别
对于Python中的可变数据类型(列表,字典)来说,+= 和 ..=..+..是不同的 加等是直接在变量的值上面进行操作,会修改了原来变量的值 先等后加会重新分配一个内存空间,不会再原有的变量值上面进 ...
- this关键字。
一.this关键字主要有三个应用: (1)this调用本类中的属性,也就是类中的成员变量: (2)this调用本类中的其他方法: (3)this调用本类中的其他构造方法,调用时要放在构造方法的首行. ...
- 对于flex布局的使用心得
弹性盒子flex: 对于客户端的布局非常有用,不管是平均分配space-around这个属性还是两端对齐space-betwee在页面布局的时候都会有很好的表现. 对于部分内容区域中,具有很多大致内容 ...