2022-03-22

linux网络配置:

1.为什么要进行网络配置?

1.ifconfig =》 查看不了ip  (无法远程登录)

2.ip会变掉=》动态ip =》静态ip

systemctl restart network =》 重启网络配置

配置ip:

1.linux ip

1.vim /etc/sysconfig/network-scripts/ifcfg-ens33

修改:

BOOTPROTO=static

ONBOOT=yes

IPADDR=192.168.10.10  //linux ip

GATEWAY=192.168.10.2  // => vm

DNS1=192.168.10.2

2.vm ip

1.ip

192.168.10.0

2.网关

192.168.10.2

3.重启linux

reboot 重启

shutdown 关机

gh03 :

1. linux ip  => 静态ip

2. vm ip :

vm ip

1.ip

192.168.10.0

2.网关

192.168.10.2

3.测试是否成功:

linux =》 192.168.10.3

克隆机器:

1.机器名

vim /etc/hostname

2.ip

vim /etc/sysconfig/network-scripts/ifcfg-ens33

3.验证:

远程连接

shell :

1.编程语言

2.可以执行的文件

2.文件内容:就是linux命令组成在一起的

1.入门:

shell脚本: xxx.sh

1.编写脚本

vim wc.sh

2.赋予脚本权限

chmod 744 wc.sh

3.执行脚本

#!/bin/bash  =》 编写 =》 bin/bash执行器  bash

sh xx.sh

1.编写脚本

vim wc.sh

2.执行脚本

sh xx.sh

执行脚本:

1.赋予权限

./xx.sh    【绝对路径、相对路径】

sh xx.sh  【绝对路径、相对路径】

2.没有赋予权限

sh xx.sh

2.变量与引用

1.变量

[root@gh04 shell]# cat variable.sh

name="zuoshao"

dt="date"

dt1=`date`

echo $name

echo $dt

echo $dt1

赋予权限:

[root@gh04 shell]# chmod u+x ./variable.sh

shell变量: shell里面变量类型默认只有一种 string

1.定义 :

k=v

2.分类:

1.静态变量

k=v k="v" k='v'

2.动态变量

k=`v`

v:

1.变量

2.系统命令

注意:

1.= 前后不能有空格

2.变量名字 都是大写 【规范】

3.定义变量的时候 建议使用 {}

2.引用:

$xx

${xx}

3.传递参数

$n  想脚本传递参数

1.n 代表一个数字

1.

[root@gh04 shell]# cat parameter.sh

echo "第一个参数:$1"

echo "第二个参数:$2"

2.

[root@gh04 shell]# cat parameter.sh

echo "文件名:$0"

echo "第一个参数:$1"

echo "第二个参数:$2"

echo "参数的个数:$#"

echo "传递的参数作为一个字符串:$*"

echo "脚本运行时候的pid为:$$"

3.元素带有空格 ""

[root@gh04 shell]# ./parameter.sh "zuo shao"

文件名:./parameter.sh

第一个参数:zuo shao

第二个参数:

参数的个数:1

传递的参数作为一个字符串:zuo shao

脚本运行时候的pid为:5731

安装软件:

1.rpm

2.yum

3.tar

rpm -qa | grep -i java | xargs -n1  rpm -e --nodeps

rpm -qa | grep -i java // rpm查询

rpm -e  --nodeps  //rpm卸载

文件名字:

jdk-8u212-linux-x64.tar.gz

.gz =》 gzip 方式压缩的文件

jdk-8u212-linux-x64.tar =》 tar文件 【归档文件】

jdk-8u212-linux-x64 =》 linux 工具 tar命令 =》 归档文件

部署jdk:

1.解压

[root@gh04 software]# tar -zxvf ./jdk-8u212-linux-x64.tar.gz -C ~/app/

2.部署

配置环境变量

vim ~/.bashrc

export  JAVA_HOME=/root/app/jdk1.8.0_212

export PATH=${JAVA_HOME}/bin:${PATH}

source ~/.bashrc

[root@gh04 jdk1.8.0_212]# ll

总用量 26000

drwxr-xr-x. 2 10 143    4096 4月  2 2019 bin  //jdk 的脚本

drwxr-xr-x. 5 10 143    4096 4月  2 2019 lib

4.数组

语法格式:

arr=(v1 v2 v3)

[root@gh04 shell]# cat arr.sh

arr_name=(zuoshao banzhang haoge)

echo "数组所有元素:${arr_name[@]}"

echo "第二个元素:${arr_name[1]}"

echo "数组的大小:${#arr_name[@]}"

5.流程控制

if else

语法格式

if contdition ;then

cmd ;

else

cmd;

fi

contdition:

[ 条件表达式 ]

1、值判断

数值类型和字符串

=

==

数值类型

-lt  less 小于

-le  less equals 小于等于

-gt  大于

-ge  大于等于

-ne  不等于

案例:

[root@gh04 shell]# cat if.sh

name1="zuoshao"

name2="xuanxuan"

if [ ${name1} == ${name2} ];then

echo "${name1} == ${name2}"

else

echo "${name1} != ${name2}"

fi

思考:

shell 里面能不能debug?

1.直接执行

./if.sh

2.debug模式

1.常用

sh -x ./if.sh

2.脚本里面

#!/bin/bash -x

if contdition ;then

cmd ;

elif contdition ;then

cmd;

else

cmd;

fi

案例:

[root@gh04 shell]# cat elif.sh

input=$1

if [ ${input} -gt 90 ];then

echo "男神"

elif [ ${input} -ge 60 ];then

echo "轩轩"

else

echo "屌丝"

fi

循环:

for while

for:

语法格式:

for xx in arr

do

cmd;

done

[root@gh04 shell]# cat forwhile.sh

for x in 1 2 3 4 5

do

echo $x

done

for((i=1;i<=10;i++)); 

do 

echo ${i}

done

while:

while(条件)

do

cmd;

done

案例:

[root@gh04 shell]# cat forwhile.sh

for x in 1 2 3 4 5

do

echo $x

done

echo "------------"

for((i=1;i<=10;i++)); 

do 

echo ${i}

done

echo "------------"

a=0

while(($a <=5))

do

echo "$a"

let a++;

done

案例:

遍历字符串数组

1.语法

function

Switch case

2.两个命令

awk

sed

MySQL:

1.使用场景?

1.java =》 app业务数据库 存储业务数据

2.大数据 =》 框架 =》 元数据的库

=》采集业务数据

=》结果数据 =》 mysql =》 数据可视化

3.没有it =》 excel =》 mysql oracle

2.MySQL是什么?

1.关系型数据库

2.类似一个表格

3.有行有列

4.存储数据的

3.为什么学习mysql ?

1.掌握sql开发 =》 数据分析 sql

2.大数据 为后续大数据框架hive sparksql flinksql  =》 打下基础 sql

4.官网

www.mysql.com

MySQL部署:

1.平台:

1.linux

2.win :

数据分析

2.部署的方式: linux

1.rpm 方式部署【】

1.方便

2.学习

3.不能够定制化

2.tar包方式【二进制方式】

3.版本:

三大版本:

5.6

5.7 主流

8.x 次主流

MySQL支持了开窗函数、

部署MySQL:

1.解析tar

tar -zxvf  xxx.tar.gz

tar -xvf xxx.tar 

[root@gh04 software]# tar -xvf ./mysql-8.0.21-1.el7.x86_64.rpm-bundle.tar -C ./mysql

2.安装mysql

rmp 包

1.卸载自带mysql相关的内容

rpm -qa | grep mariadb

mariadb => mysql分支

rpm -e  --nodeps mariadb-libs-5.5.68-1.el7.x86_64

2.安装

rpm -ivh xxx.rpm

rpm -ivh mysql-community-common-8.0.21-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-8.0.21-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-compat-8.0.21-1.el7.x86_64.rpm

rpm -ivh mysql-community-client-8.0.21-1.el7.x86_64.rpm

rpm -ivh mysql-community-server-8.0.21-1.el7.x86_64.rpm

rpm -qa | grep mysql | xargs -n1 rpm -e  --nodeps

3.启动mysql

每个软件 都有自己的 配置文件:

vim /etc/my.cnf

mysql日志文件:/var/log/mysqld.log

第一次启动:

mysqld --initialize --user=mysql

日志临时密码: root@localhost: j9kkdlwe

                                                                            yJ((Fl8E/y?h

启动mysql :

systemctl start mysqld

登录MySQL:

mysql -uroot -p

修改密码:

alter user root@localhost identified by '123456';

修改ip登录【任意ip】

update mysql.user set host='%' where user='root';

刷新权限

flush privileges;

远程连接:

mysql远程连接工具:

Navicat

dbvear 【网盘连接 mysql相关资料】

1.关闭防火墙

systemctl stop firewalld

systemctl disable firewalld

你可能感兴趣的:(2022-03-22)