在項目產品開發中,開發環境搭建是軟件開發的首要階段,也是必須階段,只有開發環境搭建好了,方可進行開發,良好的開發環境搭建,爲後續的開發工做帶來極大便利。html
對於大公司來講,軟件開發環境搭建工做通常是由運維來作,然而,對於小公司來講,這個工做就交給開發人員來作了,如開發經理。無論這個工做是交給運維人員作,仍是java
交給開發人員作,能肯定的是:作這件事的人,必定是個資深的人,如此,方可以讓開發環境穩定運行,從而爲後續的開發提供便利。mysql
現實中,只有極少部分開發人員接觸服務器(能接觸的人,基本都是開發組長及其以上,或資深開發,小公司除外),然而,對於一個技術人員來講,服務器相關環境搭建是個必linux
不可少的環節,這就產生了一個矛盾:服務器相關搭建工做是程序員不可或缺技術,但大部分程序員又少接觸服務器。鑑於此,本篇文章將詳解這個專題,對於沒搭建過服務器的開發程序員
人員,初中級開發人員,.NET轉java開發人員提供幫助。redis
本篇文章內容包括:Linux理論與實操,MySQL實操,JDK實操,Tomcat實操和Tomcat實操。sql
一 Linux環境搭建shell
本小結側重於操做,主要內容大體包括:數據庫
(一 )關於操做系統的介紹apache
1.Windows 系統
Window操做系統,是咱們再熟悉不過的系統了。
2.Linux 系統
Linux系統是一款開源的多用戶操做系統(開源主要指它的內核),因爲開源,從而衍生出不一樣版本Linux操做系統。它的內核最初只是由芬蘭人李納斯·託瓦茲(Linus Torvalds)在赫爾辛基大學上學時出於我的愛好而編寫的。
它是一套無償使用和自由傳播的類Unix操做系統,是一個基於POSIX和UNIX的多用戶、多任務、支持多線程和多CPU的操做系統。它能能運行主要的UNIX工具軟件、應用程序和網絡協議。它支持32位和64位硬件。
Linux繼承了Unix以網絡爲核心的設計思想,是一個性能穩定的多用戶網絡操做系統。
目前市面上較知名的發行版有:Ubuntu、RedHat、CentOS、Debian、Fedora、SuSE、OpenSUSE、Arch Linux、SolusOS 等。從商業角度來講,分爲商業版(收費,如Rechart系列)和非商業版(免費,如CentOS)。
(二)虛擬機
關於虛擬機,當前有兩款比較流行:VMware Workstation 和 VirtualBox。
在本篇文章中,咱們將選擇VMware Workstation Pro 15(Wmware當前最新版本)做爲演示虛擬機。
1.下載地址
官網:https://www.vmware.com/products/workstation-pro.html。官網提供了兩種不一樣平臺的虛擬機,即windows和linux。
2.序列號
GV7N2-DQZ00-4897Y-27ZNX-NV0TD
3.安裝步驟
=》下載虛擬機
因爲本次演示是基於windows的,所以下載windows版本的虛擬機
=》安裝
下載好的虛擬機安裝包以下,雙擊進行安裝。
注意:通常在安裝新軟件時,儘可能把殺毒軟件關閉。
彈出界面,選擇「下一步」
接受許可協議,下一步
選擇安裝路徑,選擇加強版(也能夠不選),下一步
下一步
下一步
安裝
安裝中....
安裝結束,輸入許可證
輸入許可證
重啓電腦,安裝完畢。
(三) CentOS
Linux鏡像官網:https://www.centos.org/download/
從官網,能夠看出提供了三種類型的CentOS鏡像:
1.DVD ISO:經常使用版本,包含大部分功能,大小爲4.2G左右;
2.Everything ISO:功能最全版本,大小爲8.8G左右;
3.Minimal ISO:壓縮版本,大小爲906M左右,不少功能須要在線安裝;
4.不管是哪一個版本鏡像,均分爲32位(x86)和64位(x64);
(四) 安裝CentOS
1.啓動虛擬機,文件=》新建虛擬機
典型,下一步
選擇安裝包,下一步
下一步
存儲單個文件,下一步
自定義硬件配置
設置內存爲8G,關閉
完成
安裝準備中(等待60秒,自動安裝,不要操做鼠標)
準備中
選擇簡體中文(中國),繼續
基本配置結束後,選擇開始安裝
安裝中
配置Root密碼
完成配置
重啓
登陸
注意:若是安裝可視化桌面,請按照以下步驟
軟件選擇
GNOME
登陸
桌面
二 MySQL安裝
1 搭建mysql
1.1 官網下載mysql壓縮包
下載壓縮包時,能夠先把安裝包下載到本地,再上傳到服務器,也能夠在linux服務器上wget:
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
官網:https://dev.mysql.com/downloads/mysql/5.7.html#downloads
1.2 解壓gz壓縮包
tar -zxvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
1.3 將壓縮包移動到 /usr/local/mysql/
mv -v mysql-5.7.26-linux-glibc2.12-x86_64 /usr/lcoal/mysql
1.4 建立用戶組和添加用戶
groupadd mysql
useradd -r -g mysql mysql
1.5 將安裝目錄全部者及所屬組改成mysql,這個根據本身的目錄來
#chown -R mysql.mysql /usr/local/mysql
1.6 在mysql目錄下建立data文件夾
#mkdir data
1.7 初始化數據庫
#/usr/local/mysql/bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data
若是出現如下錯誤是由於5.7版本的初始化命令後面要加 --initialize,以下:
/usr/local/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data --initialize
1.8 編輯配置文件
配置文件地址:/etc/my.cnf
[mysqld]
datadir=/usr/local/mysql/data
basedir=/usr/local/mysql
socket=/tmp/mysql.sock
user=mysql
port=3306
character-set-server=utf8
# 取消密碼驗證
//skip-grant-tables
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
1.9 將mysql加入到服務
#cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
1.10 開機啓動
#chkconfig mysql on
1.11 啓動mysql
#service mysql start
1.12 設置密碼
因爲在第7步my.cnf配置文件中取消了密碼驗證,故登陸mysql不須要密碼驗證。
/usr/local/mysql/bin/mysql -uroot
無密碼登陸以後,修改密碼:
#use mysql;
#update user set authentication_string=password('root') where user='root';
或者#set password=password("root");
#flush privileges;
#exit
1.13 將第7步改成須要密碼驗證
1.14 添加遠程帳戶
使用root帳戶登陸,並設置遠程登陸帳戶
GRANT ALL PRIVILEGES ON *.* to 'Alan_beijing'@'%' IDENTIFIED by 'Shanghai2019' WITH GRANT OPTION
1.15 防火牆設置
方式一:關閉防火牆
//中止
systemctl stop firewalld.service
//禁止開機啓動
systemctl disable firewalld.service
方式二:開啓端口
//這裏發現防火牆是開啓的,再來查看防火牆控制的端口
systemctl status firewalld
//查看防火牆控制的端口,發現我想要監聽的8081端口沒有開啓
firewall-cmd --list-all
//永久開啓3306端口
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
//重載防火牆
sudo firewall-cmd --reload
1.16 重啓mysql服務
service mysql start
1.17 相關命令
1 .安裝numactl和libaio
yum -y install numactl
yum search libaio
yum install libaio
2.配置環境變量
export PATH=$PATH:/usr/local/mysql/bin
3.啓動服務
方式一:服務方式
[root@localhost ~]service mysql start
若是服務在啓動狀態,直接重啓服務用如下命令:
[root@localhost ~]service mysql restart
方式二:命令行方式
[root@localhost bin]cd /usr/bin
[root@localhost bin]./mysqld_safe &
4.關閉服務
方式一:服務方式
[root@localhost ~]service mysql stop
方式二:命令行方式
[root@localhost ~]mysqladmin -u root shutdown
5.查看服務
方式一:
[root@localhost bin]ps -ef|grep mysql
方式二:
[root@localhost bin]netstat -nlp
6.進程查詢和殺死
(1) ps -ef |grep redis
ps:將某個進程顯示出來
-A 顯示全部程序。
-e 此參數的效果和指定"A"參數相同。
-f 顯示UID,PPIP,C與STIME欄位。
grep命令是查找
中間的|是管道命令 是指ps命令與grep同時執行
這條命令的意思是顯示有關redis有關的進程
(2)kill[參數][進程號]
kill -9 4394
kill就是給某個進程id發送了一個信號。默認發送的信號是SIGTERM,而kill -9發送的信號是SIGKILL,即exit。
exit信號不會被系統阻塞,因此kill -9能順利殺掉進程。固然你也可使用kill發送其餘信號給進程。
7.查看mysql
方法一:status;
方法二:select version();
2 卸載mysql
2.1 RPM包安裝方式的MySQL卸載
1.檢查是否安裝了MySQL組件
# rpm -qa | grep -i mysql
2.卸載前關閉MySQL服務
# service mysql status
# service mysql stop
# service mysql status
3.卸載刪除MySQL各種組件
# rpm -ev 組件名
4.收集MySQL對應的文件夾信息
# find / -name mysql
5.收集MySQL對應的文件夾信息
# rm -rf 路徑/文件名
6.刪除mysql用戶及用戶組
# more /etc/passwd | grep mysql
# more /etc/shadow | grep mysql
# more /etc/group | grep mysql
# userdel mysql
# groupdel mysql
7.確認MySQL是否卸載刪除
# rpm -qa | grep -i mysql
2.2 yum包安裝方式的MySQL安裝
1.查看yum上提供的數據庫可下載版本
# yum list | grep mysql
2.安裝mysql.i686,mysql-devel.i686,mysql-server.i686
# yum -y install mysql mysql-server mysql-devel
3.查看是否開機啓動
# chkconfig --list | grep mysqld
4.設置爲開機啓動
# chkconfig mysqld on
5.設置數據庫密碼
# service mysqld start
# mysqladmin -u root -p password 'root'
2.3 service mysql start出錯:unrecognized service的解決辦法
[root@ctohome.com ~]# service mysql start
mysql: unrecognized service
[root@ctohome.com ~]# service mysql restart
mysql: unrecognized service
[root@ctohome.com ~]# rpm -q mysql 查詢發現mysql已經正常安裝
mysql-5.1.52-jason.1
[root@ctohome.com ~]# chmod 755 /etc/rc.d/init.d/mysqld 修改mysqld執行權限
[root@ctohome.com ~]# service mysqld start 搞定
Starting mysqld: [ OK ]
[root@ctohome.com ~]# service mysqld status
mysqld (pid 9487) is running...
2.4 Navicat for mysql遠程鏈接數據庫詳解(1130錯誤解決方法)
1.進入MySql控制檯: mysql -u root -p
2.彈出Enter password: 輸入您的數據庫密碼
3.執行下命令: GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '您的數據庫密碼' WITH GRANT OPTION;
4.再執行下下命令: flush privileges;
5.mysql服務啓動、中止、重啓
(一)啓動方式
(1)使用 service 啓動:service mysqld start
(2)使用 mysqld 腳本啓動:/etc/inint.d/mysqld start
(3)使用 safe_mysqld 啓動:safe_mysqld&
(二)中止
(1)使用 service 啓動:service mysqld stop
(2)使用 mysqld 腳本啓動:/etc/inint.d/mysqld stop
(3)mysqladmin shutdown
(4)殺掉進程:
# ps -ef | grep mysqld
# kill -9 進程號
(三)重啓
(1)(使用 service 啓動:service mysqld restart
(2)使用 mysqld 腳本啓動:/etc/inint.d/mysqld restart
6.mysql 查詢的基本命令
1)查看內存
# top
2)mysql的安裝路徑和運行路徑
# whereis mysqld
3)PATH變量指定的路徑中,搜索mysql的信息
# which mysqld
4)查看配置文件
# vi /etc/my.cnf
7.解決修改mysql的datadir所引起的錯誤問題
1)修改datadir指向的文件路徑
1))複製默認指定路徑裏面的文件到新的指定路徑的文件夾中
2))修改指定的文件夾的修改權限
2)配置apparmor權限
1))查看apparmor的配置:# vi /etc/apparmor.d/usr.sbin.mysqld
2))配置新路徑權限
3)PATH變量指定的路徑中,搜索mysql的信息
1))查看selinux的配置:# vi /etc/selinux/config
2))修改配置: SELINUX=disabled
三 JDK安裝
1.wget下載安裝包
我將jdk安裝包下載在/TestPackages/ 目錄下
wget url
2.解壓jdk安裝包
tar xzvf jdk-8u221-linux-x64.tar.gz
解壓後
3.配置環境變量
vim /etc/profile.d/java.sh
4.使環境變量生效
source /etc/profile
5.測試jdk是否安裝成功
java -version
四 Tomcat安裝
以安裝tomcat 8 爲例
=》進入Tomcat官網,獲取Tomcat下載地址
https://tomcat.apache.org/download-80.cgi
=》wget
wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.5.43/bin/apache-tomcat-8.5.43.tar.gz
=》解壓
tar -zxvf apache-tomcat-8.5.43.tar.gz
=》啓動Tomcat
=>訪問Tomcat
用ip訪問
五 Redis安裝
(一) Redis服務搭建
1.在根路徑創建目錄 myredis
mkdir myredis
2.進入myredis目錄
cd myredis/
3.Redis搭建
(1)下載Redis
wget http://download.redis.io/releases/redis-5.0.4.tar.gz
(2)解壓Redis包
tar xzf redis-5.0.4.tar.gz
(3)切換到(2)解壓的包
cd redis-5.0.4
(4)編譯包
make
Tip:當make命令出錯時,請添加以下命令:
yum install cpp
yum install binutils
yum install glibc
yum install glibc-kernheaders
yum install glibc-common
yum install glibc-devel
yum install gcc
yum install make
yum install tcl
(二)Redis服務配置
Redis服務相關配置,主要集中在Redis.conf文件中。 在除此配置Redis服務時,有六個參數是比較重要的:requirepass, bind,port,protected-mode,daemonize,logfile
1.requirepass:配置redis登陸密碼
redis.conf中,requirepass參數默認是不須要的,即不須要密碼登陸。
這裏,我將其更改成123456
2.bind:配置ip
redis.conf中,bind默認綁定的ip爲127.0.0.1
爲了讓遠程可以訪問,請使用Linux服務器ip地址代替,查看ip命令:ifconfig
3.port:配置端口號
redis.conf默認端口號爲6379,你能夠改成你本身的端口號
以下更改成6399
4.protected-mode:設置保護模式
redis.conf的protected-mode默認是開啓保護模式的,須要更改成非開啓模式
以下設置爲不保護模式
5.daemonize
daemonize表示是否在後臺啓動redis-server,默認表示爲非在後臺啓動服務,將其設置爲後臺運行
6.logfile
redis.conf的logfile表示redis的配置文件,你們能夠理解爲sl4j.log等日誌文件,
建立文件:myredis.log
vim /myredis/redis-5.0.4/myredis.log
配置logfile參數,其路徑爲myredis.log路徑
(三) 防火牆配置
以下爲防火前配置的基本流程
1.查看防火牆狀態
防火牆狀態爲running或not running,若非running,則設置爲running
2.向防火牆添加開放端口
firewall-cmd --permanent --zone=public --add-port=6399/tcp
--permanet參數表示永久,不然表示臨時
3.加載配置
firewall-cmd --reload
4.查看開啓的端口
firewall-cmd --permanent --zone=public --list-ports
5.啓動redis服務
須要注意的是,啓動服務時,要帶上redis配置文件
src/redis-server redis.conf
查看配置文件,發現redis已經啓動成功
(四) 訪問Redis服務
1.經過xshell訪問
src/redis-cli -h 192.168.202.134 -p 6399 -a 123456
以下爲成功訪問redis的截圖
測試一下:
2.經過redisDeskManager來訪問redis服務
打開db0,就能看到剛纔set 的name
關於redis客戶端工具,目前市場上仍是比較多的,這裏我推薦兩款:
RedisDeskManager和RedisClient
(五) 相關命令
(1)關閉redis服務
redis-cli -h ip -p port shutdown
六 版權區