第一章、搭建测试环境项目
1.安装vm虚拟机
1)我们下载成功后,放到指定目录下,双击打开,点击下一步。
2)点击我接受的对勾,点击下一步。
3)选择自己安装vm的磁盘位置,可以自定义,选择磁盘位置后,点击下一步。
4)把对勾去掉,点击下一步。
5)点击下一步后,就弹出安装,点击即可。
6)选择自己安装vm的磁盘位置,可以自定义,选择磁盘位置后,点击下一步。
7)把对勾去掉,点击下一步。
8)点击下一步后,就弹出安装,点击即可。
9)安装成功后,点击许可证。
2.安装Centos7
1.选择第一个
2.选择中文
3.选择软件选择
4.选择GNOE,并勾选开发工具
5.选择安装位置
6.选择我要配置分区,点击完成
7.点击网络和主机名并开启网络连接
8.点击开始安装,并创建用户名和密码(完成需要点两次)
9.安装完成后,点击重启
10.重启后输入设置好的用户名密码就可以使用CentOS7了
3.远程连接工具: MobaXterm
远程连接需要的条件:
1)开启服务器
2)服务器的信息:ip,用户名,密码
3)服务器防火墙不阻隔你的ip
防火墙的相关命令:
3.1查看防火墙状态 systermctl status firewalld
3.2开启防火墙 sudo systemctl start firewalld
3.3关闭防火墙 sudo systemctl stop firewalld
3.4设置防火墙开启自启动 sudo systemctl enable firewalld
3.5查看防火墙已经开放的端口 firewall-cmd --list-ports
4. yum
1、yum install -y wget (安装wget)
2、wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo (如想切换其他源,可以baidu搜索即可)
3、yum clean all
4、yum makecache
5、yum -y update
6、yum -y install mysql57-community-release-el7-10.noarch.rpm
7、yum -y install mysql-community-server --nogpgcheck (安装有点慢,因为包比较大)
8、systemctl start mysqld.service
5.修改mysql的密码
1、查看初始密码:grep "password" /var/log/mysqld.log
2、登录mysql:mysql -uroot -p # 回车后会提示输入密码(输入第一步看到的密码)
3、首先确保当前数据库为 mysql 如果不在 那么使用命令:use mysql 进行切换
4、修改密码:ALTER USER 'root'@'localhost' IDENTIFIED BY 'Abc_123456';
5、退出MySQL:exit; (注意,有分号)
6、重启mysqld服务:systemctl restart mysqld.service
7、验证修改的密码是否可以正常登入
输入:mysql -uroot -p # 回车后会提示输入密码
密码为Abc_123456(第四步设定的)
6.连接MySQL服务器&打开防火墙
1、登录mysql:mysql -uroot -p (输入正确密码:Abc_123456)
2、给root账户进行数据库授权 ,同时授予相同的密码
GRANT ALL PRIVILEGES ON .TO 'root'@'%' IDENTIFIED BY 'Abc_123456' WITH GRANT OPTION;(前面的那个小数点"."用两个星号*夹在中间。)
3、exit;
4、想让其他机器访问本地centos7的mysql数据库,需要开启对应的MySQL的端口:3306
开启防火墙3306端口号命令:firewall-cmd --permanent --add-port=3306/tcp
5、重启防火墙:systemctl restart firewalld
6、确认这个端口是开放了的:firewall-cmd --query-port=3306/tcp
7、更新防火墙规则:firewall-cmd --reload
8、查看防火墙已开放列表:firewall-cmd --zone=public --list-ports
9、验证远程连接centos7mysql数据库是否可以正常连接,用Dbeaver 工具连接远程的mysql:
输入linux的IP,端口,数据库名称,密码,最后测试连接,完成。新建数据库,输入名称,字符集:utf8。
7.开启mysql -root用户允许远程访问
1.登入centos7的mysql数据库:mysql -uroot -p
2.选择 mysql数据库命令 use mysql
3.查看 user表结构,方便查询用户信息 desc user;
4.查询root 用户的host 和用户名 select host,user from user;
5.更新root 用户的host为允许远程访问形式'%': update user set host = '%' where user = 'root' and host = 'localhost'
6.刷新数据库flush privileges;
7.打开DBeaver ,测试连接数据库,可以正常访问数据库信息
8.搭建测试环境
1.安装jdk
1)将apache-tomcat-8.5.13.tar.gz 上传到
2)解压JDK
tar zxvf apache-tomcat-8.5.13.tar.gz
3):启动tomcat
cd /usr/java/apache..../bin
4 )启动命令
./startup.sh
5)测试 http://linux的ip:8080 看不到猫 tomcat(访问不了,因为防火墙阻隔了)
2.安装tomcat
1)通过’MobaxTerm‘上传文件到/usr/java
2)解压:tar zxvf apache-tomcat-8.5.65.tar.gz
3)重命名为tomcat8080: mv apache-tomcat-8.5.65 tomcat8080 (非必须,但我建议你这样做)
4)进入tomcat的bin目录:cd tomcat8080/bin
5)启动脚本:./startup.sh (访问不了,因为防火墙阻隔了)
6)添加防火墙规则:firewall-cmd --permanent --add-port=8080/tcp
7)重启防火墙:systemctl restart firewalld
8)测试:打开浏览器,输入:http://linux的ip:8080
3. mysql安装(参考第4、5章)
4.部署war包
1)通过'MobaxTerm',把war丢入tomcat的webapps下即可。(tomcat保持开启状态),war会自动解压开
2)测试:打开浏览器,输入:http://linux的ip:8080/recruit.students
5.新建数据库
create database recruit_students;
附加上sql文件
mysql -u root -p recruit_students < /usr/java/recruit_students_sql.sql(导入sql命令)
6.修改配置文件
1)vi /usr/java/apache-tomcat.../webapps/re....student/WEB-INF/classes/dataresource.properties 2)修改第二行: ip,端口、数据库 &useSSL=false ,请注意大小写 3)第三行的用户名与第四行的密码
7.重启tomcat
进入tomcat目录,先关闭,后启动
1)cd /usr/java/tomcat8080/bin/
2)./shutdown.sh
3)./startup.sh
8.测试
用户名:admin,密码:test123
第二章、重要的操作命令和LINUX的系统管理
1.基本操作
1.一个单词空格一下
2.多用clear清除屏幕
3.通过上下键找曾经敲过的命令
4.强制退出:ctrl+c (top)
5.man 命令 ----->q(quit)退出
2. linux的目录结构(必背)
1)/:根目录,读成:根,相当于windows的’计算机‘
2)/dev:device,设备目录
用户:
3)/root:超管目录
4)/home:普通用户的公共目录
软件:
5)/usr:软件的默认安装目录
6)/etc:配置文件信息
7)/var:软件的工作路径
8)/tmp:temp,临时文件夹,我们上班后做实验在这个目录下做
9)/mnt:mount, 临时挂载目录, 这个目录一般是用于存放挂载储存设备的挂载目录的,比如磁盘,光驱,网络文件系统等
10)/opt: 目录是一个传统的 Unix 系统目录,用于存储额外的应用程序或者组件
3.前缀
1)[root@localhost ~]# #整个这一长段,我们称为bash,也叫bash shell 2)#shell:用户和内核打交道做交互的那层 3)#linux自带的shell是bash shell,unix:csh windows:win shell
4)#1.切换用户
超管切普通用户:su 用户名(不需要密码) 普通用户切超管:su -/root(需要密码)
5)@localhost:本机
~:当前用户的工作目录 root的~:/root (pwd) 普通用户的~:/home/wangzhiqiang
#:超管权限 $:普通权限
4.最基本命令
1)pwd:查看当前所在位置
2)cd:切换目录 cd .. cd ../.. [相对路径&绝对路径] [root @localhost etc] # 我想去etc下的某目录,可相对:cd tmp/var/a /var/www 绝对:cd /var/www 总结:其实相对和绝对都是相对的,一切都可以用绝对路径来敲,只是你已经在这个目录,没必要再绝对路径了 看你是相对还是绝对,首字母带不带" / "
3)ls:查看当前目录有哪些具体内容 ls -l (工作常用:ll) ls -la alias:取别名 alias cai='ls -l' unalias:取消别名 unalias cai
5.文件系统
#新建,删除,重命名,复制,粘贴,剪切,查找
1)#新建 #文件夹 mkdir mkdir wangzhiqiang mkdir wangzhiqiang baobao fengjie #新建多个用空格隔开即可 mkdir -p wangzhiqiang/bao/fengjie #-p表示新建下层
#文件 touch touch cc touch cc java php #新建多个用空格隔开即可
2)#删除 #文件夹 rmdir rmdir caichang #他只能删除空文件夹,所以几乎不用
#文件 rm -r:递归 -f:强制 rm -rf 文件/文件夹
3)#剪切,重命名 #文件、文件夹 mv mv 原目录 现目录 注意:如果原目录和现目录在同一目录,表示重命名,否则表示剪切 [root@localhost /tmp]# mv zaocan wucan (重命名) [root@localhost /tmp]# mv wucan /var (剪切)
4)#复制 cp cp 原目录 现目录 (文件) cp -r 原目录 现目录 (文件夹)
5)#查找 find find 目录 -name ’名‘ find / -name 'cai' 注意:find对于运维和开发等有一些比较’妙‘的用法,请百度自己学,对于测试,一个就够
6)查看文件内容
静态文件:cat more less(常见) head,tac(不常见)
6.1)cat 文件:适用于看小文件(一屏幕就能展示完的)
cat /etc/passwd
6.2)more 文件:适用于看大文件(不能往上看)
more /proc/meminfo
6.3)less 文件:上下左右随便看
6.4)动态文件:tail,一般用来看日志
tail -f 文件
6.vi(必会)
vi是linux自带的编辑器
1)学会模式切换 I: 插入光标写入指令,Esc: 切换执行命令
2)眼睛要盯着左下角,确定自己处于什么模式
3)命令模式下有一堆的技巧,在门道,我教授最常见的技巧(足够上班)
4)光标移动:
nG:1G:第一行 7G:7行 G:最后一行
w,e:w:首字母 e:尾字母
小键盘:上下左右
k j h l
回车 backspace(删除键) space(空格键)
5)^:行首
6)$:行尾
7)复制:y yy:复制一行 nyy:复制n行 y^:复制光标到行首 y$:复制光标到行尾
8)粘贴:p
9)删除:d dd:删除一行 ndd:删除n行 d^:删除光标到行首 d$:删除光标到行尾
10)微调:x (删除光标所在位的字符)
11)撤销:u
12)查找:/ n:往下查找 N:往上查找
7.压缩/解压缩
windows:rar,zip linux对windows的这2种方案不一致。rar不支持,zip不常用
Linux针对压缩方案是:压缩和打包是2个动作 tar:打包 gzip:压缩
1)创建打包 tar cvf 包名(xx.tar) 文件/文件夹
2)释放打包 tar xvf 包名(xx.tar)
3)查看打包中的内容 tar -tf 包名(xx.tar)
4)追加文件到打包 tar -rf 包名(xx.tar) 文件/文件夹
5)删除包中内容 tar --delete -f 包名(xx.tar) 文件/文件夹
6)打包后执行压缩(得是个tar包) gzip 包名(xx.tar)
7)释放开压缩内容(得是个.tar.gz包) gunzip 包名(xx.tar.gz)
8)#工作中,我们几乎不使用前面2种,都是喜欢一次性打包压缩和释放压缩 #1.创建打包并压缩 tar zcvf 包名(xx.tar.gz) 文件/文件夹
#2.释放打包 tar zxvf 包名(xx.tar.gz)
8.用户管理(了解)
1)新建用户 useradd 用户名 adduser 用户名 注意:新建用户后,是不能登录的,因为还没有创建密码
2)设置用户的密码 passwd 用户名 注意:设置密码时候要输入2次
2.1)Linux在创建用户后,会自动的在/home下创建出这个用户的文件夹 2.2)Linux在创建用户后,会自动的创建和用户名一样的用户组
3)查看用户文件 more /etc/passwd 4)查看用户组文件 more /etc/group
5)创建用户组 groupadd 组名
6)删除用户和用户组 userdel 用户名 (虽然删除了用户,但是用户旗下的文件还在,手动删除一下 rm -rf /home/用户名文件夹,删除用户后,用户组也相应删除) groupdel 组名
7)更改文件或文件夹的所属用户 change owner chown 用户 文件/文件夹 8)更改文件或文件夹的所属用户组 change group chgrp 用户组 文件/文件夹
9.权限管理(必会)
1)读
r:read 读 4
w:write 写 2
x: execute 执行 1
读法:几几几(777)
2)理解
421 421 421
rwx rwx rwx
宿主 宿组 其他
u g o
3)chmod abc file 其中a,b,c各为一个数字,分别表示User、Group、及Other的权限,然后rwx分别对应421,若要rwx属性则为4+2+1=7,rw-则为4+2=6等等。
chmod 777 file//表示User、Group、及Other的权限都设为rwx chmod 764 file//表示User、Group、及Other的权限分别为rwx、rw-、r--
10.系统管理
1)查看cpu信息:more /proc/cpuinfo
2)查看内存信息:more /proc/meminfo
3)查看硬盘占有百分比:df -h 配合着:du -sh *
4)查看内存占用百分比:free -m
5)查看CPU占用百分比;top
6)维护主机时,我们选用内核日志查看工具:dmesg
dmesg信息非常多,我们选用重定向的方案去完成信息收集:dmesg>/tmp/2024_7_26.txt
7)日志级别信息
err: Error conditions. warn: Warning conditions. notice: Normal but significant condition. info: Informational. debug: Debug-level messages.
8)显示内核信息
dmesg -l info 仅输出info级别的日志,这不包括更高级别的日志
9)清除内核日志
dmesg -c 显示并清除当前的日志内容。
10)查看历史命令:history 配合着:!234 (234是命令的编号)
11)启动或关闭某服务:systemctl 状态 服务名
状态:start,stop,restart,status
服务名:查或问