一、軟體包管理
RPM是RedHat Package Manager(RedHat軟體包管理工具)類似Windows裡面的"新增/刪除程式"。軟體包有幾種型別,我們一起來看下:
- 原始碼包(需要經過編譯,把人所編寫的原始碼編譯成機器語言才能執行)
- 優點
- 開源免費
- 可以自由配置功能
- 編譯安裝更適合自己系統,更穩定
- 解除安裝方便
- 缺點
- 安裝過程比較複雜
- 編譯過程比較長
- 安裝過程一旦報錯,非常難以排查
- 優點
- 二進位制包(把原始碼包經過編譯生成0/1二進位制,PRM包、系統預設的安裝包)
- 優點
- 包管理系統比較簡單,只要通過簡單的命令就可以實現包的安裝、升級、查詢和解除安裝
- 安裝速度比原始碼包快很多
- 缺點
- 經過編譯則不能看到原始碼
- 功能選擇不靈活
- 依賴性比較麻煩
- 優點
- 指令碼安裝包(就是把複雜的安裝過程寫成了指令碼,可以一鍵安裝,本質上安裝的還是原始碼包和二進位制包)
- 優點是安裝簡單
- 缺點是失去了自定義性
二、YUM
yum = Yellow dog Updater, Modified。主要功能是更方便的新增/刪除/更新RPM包.它能自動解決包的倚賴性問題。yum是rpm包的線上管理命令。將所有的軟體名放到官方伺服器上,當進行YUM線上安裝時,可以自動解決依賴性問題。yum的配置資料夾地址是:/etc/yum.repos.d/。其中,CentOS-Base.repo是rpm包的倉庫,其中內容的欄位釋義如下:
欄位 | 含義 |
---|---|
base | 容器名稱,一定要放在[]中 |
name | 容器說明,可以自己隨便寫 |
mirrorlist | 映象站點,可以註釋掉 |
baseurl | YUM源伺服器的地址,預設是CentOS官方的YUM源 |
enable | 此容器是否生效 不寫或者寫成enable=1表示生效,寫成enable=0表示不生效 |
gpgcheck | 如果是1就是指 RPM的數字證書生效,如果是0則表示不生效 |
gpgkey | 數字證書的公鑰檔案儲存位置,不用改 |
通過下面的程式碼可以使用阿里雲映象,我們們暫時不使用:
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo yum makecache yum -y update //升級所有包同時也升級軟體和系統核心
另外,YUM的命令如下:
命令 | 含義 |
---|---|
yum list | 查詢所有可用軟體包列表 |
yum search 關鍵字 | 搜尋伺服器上所有和關鍵字相關的包 |
yum -y install 包名 | -y 自動回答yes install安裝 |
yum -y update 包名 | -y 自動回答yes update升級 |
yum -y remove 包名 | -y 自動回答yes remove 解除安裝,解除安裝有依賴性,所以儘量不要解除安裝 |
yum grouplist | 列出所有可用的軟體組列表 |
yum groupinstall 軟體組名 | 安裝指定的組,組名可以用grouplist查詢 |
yum groupremove 軟體組名 | 解除安裝指定軟體組 |
三、常用軟體安裝
1、nginx安裝
比較簡單,跟npm的安裝幾乎沒有區別。
yum install nginx -y #檢視安裝位置 whereis nginx #列印程式,看是否有nginx ps -ef | grep nginx #啟動nginx服務 /bin/systemctl start nginx.service #關閉nginx服務 /bin/systemctl stop nginx.service #訪問頁面 curl http://localhost
2、安裝redis
安裝比較簡單:
yum install redis -y
啟動服務:
systemctl start redis.service
systemctl stop redis.service
systemctl status redis.service
systemctl restart redis.service
3、 mongodb
前面兩個都比較好安裝,但是後面兩個資料庫會有點複雜。
因為yum裡面沒有mongodb的包,所以安裝起來會稍微有些不一樣。
先手動新增mongobd的安裝源:
vim /etc/yum.repos.d/mongodb-org-3.4.repo
然後新增下面的源地址:
[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc
這裡可以修改 gpgcheck=0, 省去gpg驗證,然後:
#就是把伺服器的包資訊下載到本地電腦快取起來
yum makecache
然後再install即可:
yum -y install mongodb-org
啟動服務:
systemctl start mongod.service
#訪問伺服器
mongo
systemctl stop mongod.service
systemctl status mongod.service
systemctl restart mongod.service
如果想要本地電腦,也就是你正在用的這臺電腦,訪問伺服器的mongodb,可以通過修改配置檔案:
whereis mongod vi /etc/mongod.conf
然後:
把紅框內的那句話註釋掉即可。
這裡要注意,本地也要安裝mongodb才可以,由於我這裡沒安裝,就不實踐了。
遠端連線:
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall開機啟動
mongo 115.29.148.6
4、安裝mysql
4.1 檢視最新的安裝包
4.2 下載MySQL源安裝包
4.3 安裝源
yum -y install mysql57-community-release-el7-11.noarch.rpm yum repolist enabled | grep mysql.*
4.4 安裝MYSQL伺服器
yum install mysql-server -y
4.5 啟動伺服器
systemctl start mysqld.service
systemctl stop mysqld.service
systemctl status mysqld.service
systemctl restart mysqld.service
4.6 初始化資料庫密碼
#這是日誌查詢 grep "password" /var/log/mysqld.log mysql -uroot -p #輸入密碼即可
這裡啊,不同版本的mysql會有些區別,有的會給一個預設的密碼,有的不會給密碼。不給密碼的直接mysql -uroot登入即可。如果給了預設密碼,則檢視/var/log/mysqld.log裡面的密碼即可。
由於mysql的版本不同,感覺更像是sql-sever的版本導致,需要在sql內執行下面的程式碼,重置密碼後才可以進入sql:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'abcd1#EFG';
SHOW VARIABLES LIKE 'validate_password%';
另外,可以通過exit命名,退出mysql服務。
4.7 支援遠端訪問
GRANT ALL PRIVILEGES ON . TO 'root'@'%' IDENTIFIED BY 'abcd1#EFG' WITH GRANT OPTION; FLUSH PRIVILEGES;
本地機器設定後訪問。
然後通過本地sql安裝地址中的命令列工具執行下面的命令即可,注意-h後的ip是你伺服器的ip:
mysql -h115.29.148.6 -uroot -p
4.8 開機自動訪問
systemctl enable mysqld
systemctl daemon-reload