1.软件包的分类
源码包
优点:开源,可以修改源码
可以自由选择需要的功能
软件是编译安装,可以更加适合自己的系统,更稳定,效率更高
卸载方便
缺点:安装步骤多,在安装大软件集合时,容易出现拼写错误
yum -y install gcc pcre-devel openssl-devel
./configure -prefix=/usr/local/python
make makeinstall
安装时间比二进制包的时间长
因为是编译,安装报错难以解决
2.安装centos
下载压缩包,可以在win下载后ftp到centos,也可以使用wget
ttp://download.redis.io/releases/redis-5.0.5.tar.gz
解压
tar -zxvf redis-5.0.5.tar.gz
移动文件到/usr/local
mv redis-5.0.5/ /usr/local/redis/
编译
cd /user/local/redis/
make
安装 ,先切到文件目录下的src目录
cd src/
make install
/usr/local/redis/src/redis-server
关闭防火墙 systemctl stop firewall.server
3.python安装
下载源码(3.12.4官网)tgz
tar -zxvf压缩文件名
在解压后的目录中找到configure可执行文件
配置安装路径,/root/python3.12.4/configure -prefix=/usr/local/py3124
进入到目录中,运行make,编译编码 make
安装 make install
在/usr/local/py3124/bin/python3.12可执行文件
/python3.12 进入编辑状态
(⊙o⊙)…也可以进入vim /etc/profile
4.Redis安装
rz -E
tar -zxvf redis-6.2.6.tar.gz /usr/local/
tar -zxvf redis-6.2.6.tar.gz -C /usr/local/
cd /usr/local/
ls
cd redis-6.2.6/
make
make install
cd /usr/local/
mkdir -p /usr/local/redis-6.2.6/bin
mkdir -p /usr/local/redis-6.2.6/etc
cd /usr/local/redis-6.2.6/
mv redis.conf /usr/local/redis-6.2.6/etc/
cd src
mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-check--dump redis-cli redis-server /usr/local/redis-6.2.6/bin/
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
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
cd /usr/local/redis-6.2.6/bin/
ll
redis-server
修改配置文件,将daemonize属性改为yes(表明需要在后台运行)
5.MongoDB安装
rz -E
mkdir /usr/local/mongodb
tar -xzvf mongodb-linux-x86_64-rhel70-3.6.3.tgz
ls mongodb-linux-x86_64-rhel70-3.6.3/bin/
cp -r mongodb-linux-x86_64-rhel70-3.6.3/bin/ /usr/local/mongodb/
cd /usr/local/mongodb/
mkdir etc //存放配置文件
mkdir log //存放日志
mkdir -p data/db //数据库目录(不能更改)
ls/usr/local/mongodb/etc
ls
ls etc
ls bin
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
PATH=/usr/local/mongodb/bin:$PATH //定义变量
echo "PATH=/usr/local/mongodb/bin:$PATH">>/etc/profile //把变量写入主配置文件里
source /etc/profile //执行这个文件
echo $PATH //输出变量
mongod -f /usr/local/mongodb/etc/mongodb.conf
ps -C mongod //查看进程
netstat -utnalp |grep 42647 //查看端口
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