1.下载
Index of /centos/7/isos/x86_64/
2.VMware安装CentOS Minimal
参考:VMware15安装Centos7超详细过程 - happy_2010 - 博客园
3.配置地址
这里用的是net连接方式,就是主机作为网关,虚拟机作为其内部的机器。
3.1 查看地址:
因为精简版本的linux没有ifconfig命令,所以需要用到命令 ip addr
3.2 修改网络配置,并重启网络服务
3.2.1 输入命令vi /etc/sysconfig/network-scripts/ifcfg-ens33,将最后一项改为ONBOOT=yes
3.2.2 sudo service network restart 重启网络服务。
参考:Linux虚拟机没有IP的解决办法 - ★行者尚★ - 博客园
4.修改时区
4.1. 查看当前时区
date -R
4.2. 修改设置时区
方法(1)
tzselect
方法(2) 仅限于RedHat Linux 和 CentOS系统
timeconfig
方法(3) 适用于Debian
dpkg-reconfigure tzdata
4.3. 复制相应的时区文件,替换CentOS系统时区文件;或者创建链接文件
cp /usr/share/zoneinfo/$主时区/$次时区 /etc/localtime
在中国可以使用:
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
5.各目录的含义
/bin: /usr/bin: 可执行二进制文件的目录,如常用的命令ls、tar、mv、cat等。
/boot:放置linux系统启动时用到的一些文件。/boot/vmlinuz 为 linux 的内核文件,以及 /boot/gurb。建议单独分区,分区大小100M即可
/dev:存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,常用的是挂载光驱 mount /dev/cdrom /mnt。
/etc:系统配置文件存放的目录,不建议在此目录下存放可执行文件,重要的配置文件有 /etc/inittab、/etc/fstab、/etc/init.d、/etc/X11、/etc/sysconfig、/etc/xinetd.d修改配置文件之前记得备份。
注:/etc/X11 存放与 x windows 有关的设置。
/home:系统默认的用户家目录,新增用户账号时,用户的家目录都存放在此目录下,~表示当前用户的家目录,~edu 表示用户 edu 的家目录。建议单独分区,并设置较大的磁盘空间,方便用户存放数据
/lib: /usr/lib: /usr/local/lib:系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助,比较重要的目录为 /lib/modules。
/lost+fount:系统异常产生错误时,会将一些遗失的片段放置于此目录下,通常这个目录会自动出现在装置目录下。如加载硬盘于 /disk 中,此目录下就会自动产生目录 /disk/lost+found
/mnt: /media:光盘默认挂载点,通常光盘挂载于 /mnt/cdrom 下,也不一定,可以选择任意位置进行挂载。
/opt:给主机额外安装软件所摆放的目录。如:FC4使用的Fedora 社群开发软件,如果想要自行安装新的 KDE 桌面软件,可以将该软件安装在该目录下。以前的 Linux 系统中,习惯放置在 /usr/local 目录下
/proc:此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内存中,所以不占用磁盘空间,比较重要的目录有 /proc/cpuinfo、/proc/interrupts、/proc/dma、/proc/ioports、/proc/net/* 等。
/root:系统管理员root的家目录,系统第一个启动的分区为 /,所以最好将 /root和 /放置在一个分区下。
/sbin: /usr/sbin: /usr/local/sbin:放置系统管理员使用的可执行命令,如fdisk、shutdown、mount 等。与 /bin 不同的是,这几个目录是给系统管理员 root使用的命令,一般用户只能"查看"而不能设置和使用。
/tmp:一般用户或正在执行的程序临时存放文件的目录,任何人都可以访问,重要数据不可放置在此目录下
/srv:服务启动之后需要访问的数据目录,如 www 服务需要访问的网页数据存放在 /srv/www 内。
/usr:应用程序存放目录,/usr/bin 存放应用程序,/usr/share 存放共享数据,/usr/lib 存放不能直接运行的,却是许多程序运行所必需的一些函数库文件。/usr/local: 存放软件升级包。/usr/share/doc: 系统说明文件存放目录。/usr/share/man: 程序说明文件存放目录,使用 man ls 时会查询 /usr/share/man/man1/ls.1.gz 的内容建议单独分区,设置较大的磁盘空间
/var:放置系统执行过程中经常变化的文件,如随时更改的日志文件 /var/log,/var/log/message:所有的登录文件存放目录,/var/spool/mail:邮件存放的目录,/var/run:程序或服务启动后,其PID存放在该目录下。建议单独分区,设置较大的磁盘空间
参考:Linux 下各个目录的作用及内容 - JackyTang - 博客园
/etc目录下的文件及详细作用
参考/etc目录下的文件及详细作用 - 59111618 - 博客园
6.安装JDK8
解压然后配置环境变量
参考:linux安装jdk8_baseline-CSDN博客_linux安装jdk
7.安装mysql
7.1.CentOS下tar包和rpm包的区别
https://www.cnblogs.com/skyblue123/p/13282878.html
7.2.下载linux通用包
mysql-8.0.18-linux-glibc2.12-x86_64.tar
https://downloads.mysql.com/archives/community/
7.3.mysql的tar包方式安装
https://blog.csdn.net/qq_40181063/article/details/90713153
7.4 mysql的my.cnf配置文件
[Mysql] MySQL配置文件my.cnf的理解 - Devops达人 - 博客园
简单配置参考:
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
lower_case_table_names=1
max_allowed_packet=32M
注意不同配置添加到 [mysqld]或[client] 下面
7.5 启动报错信息路径
/usr/local/mysql/data/localhost.localdomain.err
7.6 mysql改密码,并设置root用户所有ip能连接
set PASSWORD='123456';
use mysql;
update user set host='%' where user='root';
flush privileges;
7.7创建账户并授权
CREATE USER 'yaoct'@'%' IDENTIFIED BY '123456';
grant all privileges on *.* to 'yaoct'@'%';
grant select on *.* to 'yaoct2'@'%';
7.8 查看表格式
show full fields from 表名;
7.9 修改mysql列格式
alter table subscription_origin_information modify column id bigint(20)
alter table subscription_origin_information modify column id bigint(20) NOT NULL AUTO_INCREMENT;
8.防火墙开发指定端口
查看防火墙状态
firewall-cmd --state
如果没有开启,则开启
开启防火墙: systemctl start firewalld.service
查看监听的端口: firewall-cmd --list-port
添加3306端口监听
firewall-cmd --zone=public --add-port=3306/tcp --permanent
刷新防火墙设置
firewall-cmd --reload
9.mysql导入导出数据
创建指定编码数据库:
CREATE DATABASE tuying DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
一、导出数据库用mysqldump命令
(注意:先cd到mysql的运行路径下,再执行一下命令):
1、导出数据和表结构:
mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql
mysqldump -uroot -p dbname > dbname .sql
敲回车后会提示输入密码
2、只导出表结构
mysqldump -u用户名 -p密码 -d 数据库名 > 数据库名.sql
mysqldump -uroot -p -d dbname > dbname .sql
二、导入数据库
1、首先建空数据库
mysql>create database dbname ;
2、导入数据库
方法一:
(1)选择数据库
mysql>use dbname ;
(2)设置数据库编码
mysql>set names utf8;
(3)导入数据(注意sql文件的路径)
mysql>source /home/xxxx/dbname .sql;
方法二:
mysql -u用户名 -p密码 数据库名 < 数据库名.sql
参考:linux下mysql数据库导入导出命令 - chandb - 博客园
10.开机自启Jar包
Linux设置jar包开机自启动 - 无敌小韩韩 - 博客园
写startup.sh,导出路径可参考配置/etc/profile
export JAVA_HOME=/usr/local/jdk1.8.0_212
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}
nohup java -jar /usr/local/jarserve/tuying-data-0.0.1-SNAPSHOT.jar > output.log 2>&1 &
请注意,这里的export设置环境变量不可少,如果不知道本机的环境变量,可以通过more /etc/profile来查看。nohup命令可以让java在后台运行,即使关闭窗口也会继续运行。chmod改变out.log输出日志的读写权限,使得普通用户也可查看。
然后运行chmod命令,使其可运行。
chmod +x /usr/local/startup.sh
接着编辑/etc/rc.local,加上一行
/usr/local/startup.sh
系统启动后,在加载完所有组件后会以root身份执行rd.local的命令。
给rc.local可运行权限
chmod +x /etc/rc.local
保存后reboot重启服务器,待重启后通过命令查看是否运行了java
ps -ef|grep java
如果出现错误$‘\r‘: command not found
出现这样的错误,是因为Shell脚本在Windows系统编写时,每行结尾是\r\n,而在Linux系统中行每行结尾是\n,所以在Linux系统中运行脚本时,会认为\r是一个字符,导致运行错误。
解决方法
去除Shell脚本的\r字符:
方法1
sed -i 's/\r//' one-more.sh
linux nohup启动java忽略输出
linux nohup启动java忽略输出_mob649e8158ed1f的技术博客_51CTO博客
11.pg数据库操作
Linux上POSTGRES操作 - 施凯sky - 博客园
postgreSQL在linux下的使用_quanqxj的博客-CSDN博客_linux 连接postgresql
Linux postgresql11 安装_dakerKing-CSDN博客
postgres安装(linux)
先切换到postgres账户
$ sudo su - postgres
$psql [database]< postgres.sql 导入
创建schema
# create schema myschema;
查看shema下的所有表
\dt xxl_job.
\l 所有数据库
\c [数据库名] 切换数据库
连接pg数据库报错:no pg_hba.conf entry for host
解决办法:
修改pg_hba.conf,在第一行添加一行:
host all all 0.0.0.0/0 md5
表示允许任何用户连接到任何数据库,用一个加密的密码
pg_dump -U postgres -C -p 8099 [database] > XXX.sql
config_file | /var/lib/pgsql/10/data/postgresql.conf
data_directory | /var/lib/pgsql/10/data
external_pid_file |
hba_file | /var/lib/pgsql/10/data/pg_hba.conf
ident_file | /var/lib/pgsql/10/data/pg_ident.conf
12.linux常用命令
传输文件:
rz -be(可以把windows系统的文件传输到Linux系统里面,jar包可以这个,其他文档只用rz这个命令就行)
sz xxx.log(可以把Linux系统的文件复制到window系统,需要cd到该文件的路径下)
目前图影项目服务jar包运行:
nohup java -jar tuying-data-0.0.1-SNAPSHOT.jar > output.log 2>&1 & (运行并且输出日志)
nohup java -jar tuying-data-0.0.1-SNAPSHOT.jar &(普通运行)
停止jar包运行:
(1)、查看当前服务应用所占用端口:netstat -nlp|grep 8090 (8090是当前系统jar包启动访问的端口,这个命令可以查看当前端口的运行线程)
(2)、关闭系统:kill 256097 (由第一步的命令查询出线程为256097)
返回上一级目录:
cd ..
删除文件:
rm -f /usr/jarserve/output.log (/usr/jarserve/output.log这个是当前文件所在的路径)
复制文件:
cp dir1/a.doc dir2 表示将dir1下的a.doc文件复制到dir2目录下
移动文件:
mv b.txt c.bak 将文件 b.txt 重命名为 c.bak
mv -i 456.txt /home/hk/cpdir/copy/abc 将 456.txt 移动到 /home/hk/cpdir/copy/ 并取名为 abc 若已存在文件 abc则会询问是否覆盖。
修改具体文件:
vim Hello.java(这个是进入该文件的当前目录)
vim /usr/javatest/Hello.java(该文件的路径)
查看防火墙状态:
systemctl status firewalld(有active (running)是开启的)(有inactive (dead)是关闭的)
firewall-cmd --state(running是打开的意思,not running是关闭的)
开启防火墙:
systemctl start firewalld
关闭防火墙:
systemctl stop firewalld
防火墙开放指定端口:
firewall-cmd --zone=public --add-port=5672/tcp --permanent # 开放5672端口
firewall-cmd --zone=public --remove-port=5672/tcp --permanent #关闭5672端口
firewall-cmd --reload # 配置立即生效(上面两个命令在success之后,需要输入这个生效的命令)
查看防火墙所有开放的端口:
firewall-cmd --zone=public --list-ports
MySQL当前具体数据库运行sql文件:
use databasename;
source xxx.sql;
MySQL导出数据库命令:
mysqldump -u root -p databasename > /usr/sqlfile/databasename.sql
回车输入密码
MySQL转储sql文件(导入数据库脚本文件)
mysql -uroot -p密码 databasename < /usr/sqlfile/databasename.sql
创建指定编码数据库:
CREATE DATABASE tuying DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
接口测试:
curl -X GET "http://localhost:8090/test/list" -H "accept: */*"
update equipment_installation_point set ipAddress='33.157.70.201' where categoryCode='002';
查看Java由哪些进程使用
ps -ef | grep java
查看端口占用(某些精简系统不带此命令)
netstat -lnpt |grep 5672