1. 程式人生 > >Linux 軟體管理

Linux 軟體管理

原創轉載自海牛部落-青牛,http://hainiubl.com/topics/172

1 什麼是yum?

1.1 yum 簡介
yum 的理念是使用一箇中心倉庫(repository)管理一部分甚至一個distribution 的應用程式相互關係,根據計算出來的軟體依賴關係進行相關的升級、安裝、刪除等等操作,減少了Linux 使用者一直頭痛的dependencies 的問題。這一點上,yum 和apt 相同。apt 原為debian 的deb 型別軟體管理所使用,但是現在也能用到RedHat 門下的rpm 了。
   yum 主要功能是更方便的新增/刪除/更新RPM 包,自動解決包的倚賴性問題,便於管理大量系統的更新問題。
   yum 可以同時配置多個資源庫(Repository),簡潔的配置檔案(/etc/yum.conf),自動解決增加或刪除rpm 包時遇到的依賴性問題,保持與RPM 資料庫的一致性。
1.2 配置阿里雲 yum 源

file

2)下載 repo 檔案
檔案下載地址: http://mirrors.aliyun.com/repo/Centos-7.repo

3)用 rz 將下載的 Centos-7.repo 檔案上傳到Linux系統的某個目錄下

file

1.3 安裝常用軟體
yum install -y openssh-server vim gcc gcc-c++ glibc-headers bzip2-devel lzo-devel curl wget openssh-clients zlib-devel autoconf automake cmake libtool openssl-devel fuse-devel snappy-devel telnet unzip zip net-tools.x86_64 firewalld systemd

1.4 關閉防火牆
檢視防火牆狀態:firewall-cmd --state
關閉防火牆:systemctl stop firewalld.service
禁止防火牆開機啟動: systemctl disable firewalld.service
檢視服務是否開機啟動: systemctl is-enabled firewalld.service
1.5 關閉SELinux
檢視關閉狀態
/usr/sbin/sestatus -v
關閉方法
vim /etc/selinux/config
把檔案裡的SELINUX=disabled

file

重啟伺服器
reboot
啟動之後用
/usr/sbin/sestatus -v 檢視selinux的修改狀態

2 安裝JDK#

2.1 JDK 下載地址
地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

file

2.2 安裝JDK
1)用 rz 命令將安裝檔案上傳Linux 系統
進入指定目錄後,用rz 命令上傳檔案到當前目錄

file

2.3 配置JDK 環境變數
1)修改系統環境變數檔案 /etc/profile,在檔案尾部追加以下內容
JAVA_HOME=/usr/java/jdk1.8.0_144
JRE_HOME=/usr/java/jdk1.8.0_144/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH

file

3 Linux上執行 HelloWorld#

3.1 利用 maven 生成可執行 jar
參考:Java 課件 中 maven 課程部分。
3.2 用rz 命令將 可執行jar 上傳Linux

file

file

file

file

其中:

-qa:搜尋指定rpm包是否安裝;
通過 rpm -e 命令解除安裝不掉的包,可以加—nodeps這個引數來解除安裝。
4.2 安裝並啟動 mysql
1)獲取mysql 源安裝包
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

file

2)安裝mysql 源
rpm -ivh mysql57-community-release-el7-11.noarch.rpm

3)檢查mysql源是否安裝成功
yum repolist enabled | grep "mysql.-community."

file

3)用 yum 命令安裝mysql
yum install mysql-community-server

4)配置mysql的檔案目錄
檢視MYSQL配置檔案載入順序:

file

修改/etc/my.cnf 配置檔案內的檔案目錄
datadir=/data/mysql/data
sql_mode=STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

log-error=/data/mysql/log/mysqld.log

file

其中:
SQL_MODE:通過對其正確的設定可以完成一些約束檢查的工作,設定時,在配置檔案my.cnf 中配置進行全域性的設定。

STRICT_TRANS_TALES(嚴格模式):
只對支援事務的表啟用嚴格模式
NO_AUTO_CREATE_USER:
禁止GRANT建立密碼為空的使用者。
NO_ENGINE_SUBSTITUTION:
啟用後,若需要的儲存引擎被禁用或未編譯,則丟擲錯誤;未啟用時將用預設的儲存引擎代替,並丟擲一個異常。

file

通過上面命令會在 /data/mysql/log/mysqld.log 中生成隨機碼,隨機碼用來首次登入mysql。ujkq0>4*/yMD

file

file

file

11)解除安裝mysql如果啟動報錯,根據錯誤檢視原因,如果實在解決不了,解除安裝mysql 重新裝。檢視已經安裝過的元件rpm -qa | grep -i mysql

file

用yum -y remove 解除安裝所有mysqlyum -y remove mysql57-community-release-el7-11.noarch
yum -y remove mysql-community-common-5.7.19-1.el7.x86_64

解除安裝後再用 rpm -qa | grep -i mysql 檢視,直至全部解除安裝

刪除/data/mysql 目錄

file

可參考: http://www.cnblogs.com/wy123/archive/2017/06/02/6932166.html

5 配置Mysql 使用者及許可權5.1 設定密碼用生成的隨機密碼登入進入 mysql 命令列後,需要重置密碼。在重置時不想密碼設定得那麼複雜。需要設定validate_password_policy 引數:#

file

如果報錯不用管。這樣,判斷密碼的標準就基於密碼的長度了。這個由validate_password_length引數來決定。validate_password_length預設是8所以密碼長度必須大於8。設定密碼:

file

設定完密碼後,需要用新密碼重新登入MySQL5.7是預設安裝validate_password外掛
那麼如何驗證validate_password外掛是否安裝呢?可通過檢視以下引數,如果沒有安裝,則輸出將為空。

file

file

file

file

授權mytest 使用者擁有my_base 資料庫的所有許可權:
grant all privileges on my_base.* to 'mytest'@'localhost' identified by '12345678';

刷新系統許可權表

flush privileges;

指定部分許可權給使用者:

授權使用者擁有my_base 資料庫的 select,update 許可權

grant select,update on my_base.* to 'mytest'@'localhost' identified by '12345678';

刷新系統許可權表

flush privileges;

授權mytest 使用者擁有所有資料庫的某些許可權:
'%' 表示對所有非本地主機授權,不包括localhost

grant select,delete,update,insert,create,drop on my_base.* to [email protected]'%' identified by '12345678';

file

drop user 使用者名稱@’%’;
drop user 使用者名稱@ localhost;
5.6 修改指定使用者密碼
mysql -uroot -p'12345678';
update mysql.user set authentication_string=password('新密碼') where User='mytest' and Host='localhost';
flush privileges;

6 用Navicat 連線 Linux 系統中的mysql#

連線前,要配置好 遠端使用者登入的使用者的許可權。
和之前連線自己本機的mysql 是一樣的。這回登入 需要用 你建立的遠端使用者登入。
給遠端登入使用者授權以下許可權

grant select,delete,insert,update,create,drop
建立表、新增表資料、查詢表資料 均省略

7 在Linux上執行帶有查詢sql 的 jar#

1) 打帶有SQL查詢程式的jar包,打jar包參考maven章節。
注意:
如果報下面的錯誤

file