一、软件包的分类
源码包
优点:开源,可以修改源码
可以自由选择需要的功能
软件是编译安装,可以更加适合自己的系统,更稳定,效率更高
卸载方便
缺点:安装步骤多,在安装大软件集合时,容易出现拼写错误
yum -y install gcc pcre-devel openssl-devel
./configure -prefix=/usr/local/python
make makeinstall
安装时间比二进制包的时间长
因为是编译,安装报错难以解决
二、python安装具体步骤如下:
1.下载源码(3.12.4官网)
2.tar -zxvf压缩文件名
3.在解压后的目录中找到configure可执行文件
4.配置安装路径,/root/python3.12.4/configure -prefix=/usr/local/py3124
5.进入到目录中,运行make,编译编码 make
6.安装 make install
7.在/usr/local/py3124/bin/python3.12可执行文件
8./python3.12 进入编辑状态(也可以进入vim /etc/profile)
rz -E
tar -xzvf Python-3.12.4.tgz
cd Python-3.12.4
yum -y install gcc pcre-devel openssl-devel
./configure -prefix=/usr/local/python
make makeinstall
export path=/usr/local/py3124/bin/:$PATH
[root@localhost bin]# vim /etc/profile
[root@localhost bin]# source /etc/profile
[root@localhost bin]# ./python3.12
三、安装包
二进制包,直接进行
源码包,需要被编译成的二进制
yum
rpm
nginx
python3.12
- Linux网络配置
1.ifconfig --查看网络接口信息
2.查看所有活动的网络接口信息
ifconfig
3、查看网络配置
1、ifconfig——查看网络接口层
(1)ifconfig :查看所有活动的网络接口信息
(2)ifconfig -a :显示所有活动以及非活动链接
(3)ifconfig 网络接口 :查看指定网络接口信息
ifconfig显示已开启的接口,不包含禁用的设备
ens33第一块以太网卡名称
en EtherNet, 以太网
s hostplugslot 热插拔插槽上的设备
160 插槽编号
lo loopback 回环网络接口,不代表真实的网络接口,而是一 个虚拟的网络接口,他的ip地址是127.0.0.1,回环地址通常用于对本地网络测试
inet192.168.135.129 ip地址
netmask 子网掩码
broadcast192.168.1.25 广播地址
ether 00:0c:29:62:7c:cc mac地址
2、ifconfig——设置网络接口参数
(1)ifconfig 网络接口 IP地址 【netmask 子网掩码】 :设置网络接口的IP地址,子网掩码
ifconfig网络接口IP地址 【/子网掩码长度】
当不指定子网掩码时,将使用IP地址所在分类的默认子网掩码
(2)ifconfig ens36 down/up :禁用或者重新激活网卡
(3)设置虚拟网络接口 :ifconfig ens160 :192.168.1.26
3、hostname——查看主机名称
(1)hostname 名称 【临时的只在第二个窗口生效】 :临时修改主机名称
(2)hostnamectl set-hostname 名称 :永久修改主机名称
(3)hostname -i :查看本主机IP
四、Redis MongoDB nosql 一条数据就是一个文档
1、MongoDB
{id:123,name:"zhangsan"}
{mes:"woshqinshihuang",gender:"nan"}
安装和运行redis和mongodb,并且会简单的增删改查
启动方式,端口,logo
2、Redis安装
118 rz -E
119 tar -zxvf redis-6.2.6.tar.gz /usr/local/
120 tar -zxvf redis-6.2.6.tar.gz -C /usr/local/
121 cd /usr/local/
122 ls
123 cd redis-6.2.6/
124 make
125 make install
126 cd /usr/local/
127 mkdir -p /usr/local/redis-6.2.6/bin
128 mkdir -p /usr/local/redis-6.2.6/etc
129 cd /usr/local/redis-6.2.6/
130 mv redis.conf /usr/local/redis-6.2.6/etc/
131 cd src
133 mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-check--dump redis-cli redis-server /usr/local/redis-6.2.6/bin/
134 mv mkreleasehdr.sh redis-benchmark.c redis-benchmark.o redis-check-aof.c redis-check-aof.o redis-check-dump.c redis-check-dump.o redis-cli.c redis-cli.o redis-server /usr/local/redis/bin
135 mv mkreleasehdr.sh redis-benchmark.c redis-benchmark.o redis-check-aof.c redis-check-aof.o redis-check-dump.c redis-check-dump.o redis-cli.c redis-cli.o redis-server /usr/local/redis-6.2.6/bin
136 cd /usr/local/redis-6.2.6/bin/
137 ll
138 redis-server
修改配置文件,将daemonize属性改为yes(表明需要在后台运行)
[root@localhost bin]# cd /usr/local/redis-6.2.6/etc/
[root@localhost etc]# vim redis.conf
[root@localhost etc]# redis-server /usr/local/redis-6.2.6/etc/redis.conf
[root@localhost etc]# ps -ef | grep redis 查看进程
查看端口号 为6379
关闭redis:切换到:/usr/local/redis6.2.6/bin目录下,执行./redis-cli shutdown
杀死redis:
启动redis:/usr/local/redis-6.2.6/bin目录下,执行./redis-server & /usr/local/redis-6.2.6/etc/redis.conf
MongoDB安装
157 rz -E
158 mkdir /usr/local/mongodb
159 tar -xzvf mongodb-linux-x86_64-rhel70-3.6.3.tgz
160 ls mongodb-linux-x86_64-rhel70-3.6.3/bin/
161 cp -r mongodb-linux-x86_64-rhel70-3.6.3/bin/ /usr/local/mongodb/
162 cd /usr/local/mongodb/
163 mkdir etc //存放配置文件
164 mkdir log //存放日志
165 mkdir -p data/db //数据库目录(不能更改)
166 ls/usr/local/mongodb/etc
167 ls
168 ls etc
169 ls bin
170 vim /usr/local/mongodb/etc/mongodb.conf
dbpath=/usr/local/mongodb/data/db //数据库目录存放位置
logpath=/usr/local/mongodb/log/mongodb.log/日志存放位置
logappend=true #追加的方式记录日志信息
fork=true #守护进程方式运行
bind_ip=192.168.2.30 #自己ip
171 PATH=/usr/local/mongodb/bin:$PATH //定义变量
172 echo "PATH=/usr/local/mongodb/bin:$PATH">>/etc/profile //把变量写入主配置文件里
173 source /etc/profile //执行这个文件
174 echo $PATH //输出变量
175 mongod -f /usr/local/mongodb/etc/mongodb.conf
176 ps -C mongod //查看进程
177 netstat -utnalp |grep 42647 //查看端口
178 mongo --host 192.168.2.30 --port 27017 //连接服务(exit退出)
(1)库管理命令: 查看 创建 切换 删除
show dbs 查看已有的库
db 显示当前所在的库
use 库名 切换库,若库不存在的话 会自动延时创建库
show tables 查看库下已有的集合
db.dropDatabase() 删除当前所在的库(区分大小写)
>db //查看当前所在库库
> show dbs //显示已有的库
>show users //当前已有的用户
> show tables
> use bbsdb
switched to db bbsdb
> db
bbsdb
> use gamedb
switched to db gamedb
> db
gamedb
> db.dropDatabase()
{ "ok" : 1 }
> use bbsdb
switched to db bbsdb
> db
bbsdb
> show table
(2)集合管理命令:查看 创建 删除
-合法的集合名
-集合名不能是空字符串""。
-集合名不能含有\0字符(空字符),这个字符表示集合名的结尾
-集合名不能以"system."开头,这是为系统集合保留的前缀。
-用户创建的集合名字不能含有保留字符。
show tables #查看集合
db.集合名.save({字段名:''值'',字段名:''值''})
#创建集合,集合不存在时,创建并添加文档
db.集合名.drop() #删除集合
> db.t1.save({name:"bob",age:21})
WriteResult({ "nInserted" : 1 })
> db.t1.save({name:"bob",age:21,emai:"ha.163.com",home:"qy"})
WriteResult({ "nInserted" : 1 })
> show tables
t1
> db.t2.save({name:"bob",age:21,emai:"ha.163.com",home:"qy"})
WriteResult({ "nInserted" : 1 })
> show tables
t1
t2
> db.t2.drop()
true
> show tables
t1
(3)文档管理: 查看 添加 删除
db.集合名.find()
db.集合名.find(条件) //根据条件查找
db.集合名.find({name:”Mark”})
db.集合名.count() //统计记录
db.集合名.insert({“name”:”jim”})
db.集合名.findOne() 只显示第一行
db.集合名.remove({}) #删除所有文档
db.集合名.remove({条件}) #删除与条件匹配的所有文档
> db.t1.find()
{ "_id" : ObjectId("663511fe0855602b9e2759e0"), "name" : "bob", "age" : 21 }
{ "_id" : ObjectId("663512570855602b9e2759e1"), "name" : "bob", "age" : 21, "emai" : "ha.163.com", "home" : "qy" }
> db.t1.count()
2
> db.t1.insert({name:"yaya",sex:"girl"})
WriteResult({ "nInserted" : 1 })
>db.t1.save({name:"yaya1",sex:"girl"})
>db.t1.find({name:"yaya"})
> db.t1.findOne()
{ "_id" : ObjectId("663511fe0855602b9e2759e0"), "name" : "bob", "age" : 21 }
> db.t1.remove({name:"bob"})
WriteResult({ "nRemoved" : 2 })
> db.t1.find()
{ "_id" : ObjectId("6635173b0855602b9e2759e3"), "name" : "yaya", "sex" : "girl" }
{ "_id" : ObjectId("663517580855602b9e2759e4"), "name" : "yaya1", "sex" : "girl" }
> db.t1.remove({})
WriteResult({ "nRemoved" : 2 })
> db.t1.find()
> show tables
t1
> db.t1.drop()
true
> show tables