想在虛擬機(jī)上搭建公司項(xiàng)目的測(cè)試環(huán)境,問了開發(fā),大概有幾步工作要做:
- 安裝虛擬機(jī)(略)
- 安裝CentOS7 操作系統(tǒng)(略)
- 安裝 jdk 1.8
- 安裝 mysql 5.7
- 安裝 Redis 4.0.6
- 安裝 Tomcat 7
- 安裝 Nginx
格式排版比較亂,后面再優(yōu)化,話說這個(gè)圖片尺寸我一直不知道怎么弄,走過路過的大神指點(diǎn)下
參考博客:
https://www.cnblogs.com/xuliangxing/p/7066913.html(jdk)
https://blog.csdn.net/weixin_42266606/article/details/80863781(通過這篇文章知道了 vim 的好處)
https://blog.csdn.net/z13615480737/article/details/80019881(mysql)
3. 安裝 jdk
3.1 先查看系統(tǒng)有沒有自帶的openjdk

3.2 下載 jdk 1.8
本來(lái)想下載 jdk1.7,后來(lái)發(fā)現(xiàn)怎么都不能成功,有說是1.7版本不存在了,所以用1.8版本。
直接通過 wget命令下載的文件無(wú)法正常解壓,所以采用了另一種辦法,先在本機(jī)上訪問https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 下載壓縮包,然后通過 FileZilla Client 將本機(jī)下載的文件上傳至 虛擬機(jī)服務(wù)器上。

3.3 解壓后設(shè)置jdk環(huán)境變量
vi /etc/profile
用 vi 編輯器來(lái)編輯profile文件,在文件末尾添加一下內(nèi)容(按“i”進(jìn)入編輯):
1 export JAVA_HOME=/usr/local/java/jdk1.8.0_201
2 export JRE_HOME=${JAVA_HOME}/jre
3 export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
4 export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
5 export PATH=$PATH:${JAVA_PATH}

保存并退出(按":wq!")。
通過命令 source /etc/profile 讓 profile 文件立即生效
3.4 測(cè)試是否安裝成功
①、使用javac命令,不會(huì)出現(xiàn)command not found錯(cuò)誤
②、使用java -version,出現(xiàn)版本為java version "1.8.0_131"
③、echo $PATH,看看自己剛剛設(shè)置的的環(huán)境變量配置是否都正確
4 安裝 mysql
4.1 參考文章:https://blog.csdn.net/z13615480737/article/details/80019881
4.1.1 安裝依賴
yum install -y cmake make gcc gcc-c++ libaio ncurses ncurses-devel
4.1.2 切換到 【/usr/local/src】目錄下
使用命令 cd /usr/local/src
4.1.3 下載安裝包
執(zhí)行命令 wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.25-linux-glibc2.12-x86_64.tar
(如果文中的下載鏈接失效了,可以參照下圖,找到最新的下載鏈接)



4.1.4 關(guān)于解壓

文中是直接在當(dāng)前路徑【/usr/local/src】下解壓的,所以解壓后文件名稱如下:

我使用了mv mysql-5.7.25-linux-glibc2.12-x86_64 mysql 命令,將 【mysql-5.7.25-linux-glibc2.12-x86_64 mysql】這個(gè)文件夾名稱重新命名成 mysql,以保持跟后面的命令一致

4.1.5 安裝數(shù)據(jù)庫(kù)
在【/usr/local/mysql】路徑下,執(zhí)行 bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data 命令。效果如下:

4.1.6 執(zhí)行以下命令創(chuàng)建RSA private key
bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
4.1.7 修改當(dāng)前目錄擁有者為mysql用戶
chown -R mysql:mysql ./
4.1.8 修改當(dāng)前data目錄擁有者為mysql用戶
chown -R mysql:mysql data
4.1.9 配置my.cnf
vim /etc/my.cnf (直接把下面內(nèi)容復(fù)制上就行)
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
#不區(qū)分大小寫
lower_case_table_names = 1
#不開啟sql嚴(yán)格模式
sql_mode = "STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
log-error=/var/log/mysqld.log
pid-file=/usr/local/mysql/data/mysqld.pid
4.1.10添加開機(jī)啟動(dòng)
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
4.1.11 修改 vim /etc/init.d/mysqld
添加路徑
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
4.1.12 啟動(dòng)mysql service mysqld start
由于第二次重裝 mysql,導(dǎo)致之前安裝的 mysql 還有進(jìn)程在運(yùn)行,使用 該命令啟動(dòng)時(shí),提示“The server quit without updating PID file (/usr/local/mysql/data/mysqld.pid)”
查閱資料:
https://blog.csdn.net/ydyang1126/article/details/72473828
https://blog.csdn.net/qq_33528613/article/details/77743143
4.1.13 使用 ps -ef|grep mysqld 命令 確認(rèn)

使用 【kill -9 進(jìn)程號(hào) 】命令,再次執(zhí)行service mysqld start 命令,成功。
4.1.14 加入開機(jī)起動(dòng)
chkconfig --add mysqld
4.1.15 登錄修改密碼
mysql -uroot -p
如果出現(xiàn)錯(cuò)誤 需要添加軟連接
ln -s /usr/local/mysql/bin/mysql /usr/bin
(軟連接是個(gè)好東西)

4.2 遇到的問題
以下是第一次安裝出現(xiàn)的問題,可以看到目錄還是【mysql-5.7.25-linux-glibc2.12-x86_64】,沒有重命名成 mysql
報(bào)錯(cuò)1:執(zhí)行 bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data 命令時(shí),提示找不到文件。

(?_?)?原因
當(dāng)前處在 mysql 目錄下,沒有進(jìn)入 【mysql-5.7.25-linux-glibc2.12-x86_64】目錄。
解決辦法
執(zhí)行 cd mysql-5.7.25-linux-glibc2.12-x86_64 命令,進(jìn)入該目錄下,再執(zhí)行上面的命令;
報(bào)錯(cuò)2:1個(gè)ERROR+5個(gè)警告
重點(diǎn)
“Can't find error-message file '/usr/local/mysql/share/errmsg.sys'. Check error-message file location and 'lc-messages-dir' configuration directive.”

(?_?)?原因
我的解壓文件夾【mysql-5.7.25-linux-glibc2.12-x86_64】的位置是在 /usr/local/mysql 目錄下,而命令中指定的basedir=/usr/local/mysql --datadir=/usr/local/mysql/data 都是直接到mysql文件夾,可以觀察到我的/usr/local/mysql 文件夾下沒有data文件夾,data文件夾是在 我的解壓文件夾【mysql-5.7.25-linux-glibc2.12-x86_64】下的,因此,需要重新修改下路徑

解決辦法
修改命令如下bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/mysql-5.7.25-linux-glibc2.12-x86_64 --datadir=/usr/local/mysql/mysql-5.7.25-linux-glibc2.12-x86_64/data
image.png
可以看到,重新執(zhí)行命令后,沒有 error 提示了,同時(shí),bin 和 data 文件夾在同一個(gè)目錄下,刪除掉原先的 data 文件夾
image.png
報(bào)錯(cuò)3:登錄 mysql ,允許 show databases; 命令報(bào)錯(cuò)

(?_?)?原因
初始化MySQL時(shí)生成的隨機(jī)密碼,只能用于初次登錄。如果你要使用SQL語(yǔ)句作其他操作,就要修改密碼后才能進(jìn)行了。否則會(huì)報(bào)錯(cuò)“ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.”。
解決辦法
參考:https://jingyan.baidu.com/article/5553fa82a9858365a23934e1.html
通過SET指令修改密碼。
SET PASSWORD=PASSWORD('newpassword');
到此MySQL就安裝完畢了,可以愉快的使用MySQL提供的服務(wù)了。
5. 安裝 Redis
參考文檔:
https://www.cnblogs.com/zuidongfeng/p/8032505.html
https://blog.csdn.net/u010623954/article/details/80037078
https://www.cnblogs.com/zk1023/p/9465430.html
5.1 下載 redis 安裝包
在【/usr/local/src】目錄下執(zhí)行 wget http://download.redis.io/releases/redis-4.0.6.tar.gz
5.2 解壓壓縮包
tar -zxvf redis-4.0.6.tar.gz
5.3 將文件復(fù)制到 【/usr/local】目錄下
cp -r redis-4.0.6 /usr/local
5.4 安裝gcc依賴
yum install gcc
之前安裝 mysql時(shí)已經(jīng)安裝過依賴了,所以這里會(huì)提示已存在,可忽略。
5.5 跳轉(zhuǎn)到redis解壓目錄下
cd redis-4.0.6
5.6 編譯安裝
make MALLOC=libc
5.7 將/usr/local/redis-4.0.6/src目錄下的文件加到/usr/local/bin目錄
cd src && make install
5.8 啟動(dòng)redis,測(cè)試是否安裝成功
cd /usr/local/redis-4.0.6/src/
./redis-server
redis啟動(dòng)成功,但是這種啟動(dòng)方式需要一直打開窗口,不能進(jìn)行其他操作,不太方便,按 ctrl + c 關(guān)閉窗口。
5.9 配置redis
5.9.1 以后臺(tái)進(jìn)程方式啟動(dòng)
<1>.修改/usr/local/redis-4.0.9/redis.conf: daemonize no 將值改為yes ,保存,退出
<2>. vim redis.conf
<3>. cat redis.conf |grep "daemonize"
5.9.2 指定redis.conf文件啟動(dòng)
./redis-server /usr/local/redis-4.0.6/redis.conf

5.9.3 設(shè)置redis遠(yuǎn)程連接:
a.因?yàn)閞edis默認(rèn)設(shè)置允許本地連接,所以我們要將redis.conf中將bind 127.0.0.1 改為bind 0.0.0.0或者注釋該行
b.另外,阿里云ECS有一個(gè)安全組,找到并添加規(guī)則允許6379端口訪問
設(shè)置redis連接密碼:
在redis.conf中搜索requirepass這一行,然后在合適的位置添加配置
找到 #requirepass foobared去掉注釋,foobared改為自己的密碼 例如這里我改成123456
設(shè)置完成后執(zhí)行/usr/local/bin/redis-server /usr/local/redis-4.0.6/redis.conf 更新配置

5.9.4 關(guān)閉redis進(jìn)程
<1>使用ps -aux | grep redis查看redis進(jìn)程

<2>使用kill命令殺死進(jìn)程

5.9.5 設(shè)置開機(jī)自啟動(dòng)
<1>. 在/etc目錄下新建redis目錄
mkdir redis
<2>. 將/usr/local/redis-4.0.6/redis.conf 文件復(fù)制一份到/etc/redis目錄下,并命名為6379.conf
cp /usr/local/redis-4.0.6/redis.conf /etc/redis/6379.conf
<3>. 將redis的啟動(dòng)腳本復(fù)制一份放到/etc/init.d目錄下
cp /usr/local/redis-4.0.6/utils/redis_init_script /etc/init.d/redisd
<4>. 設(shè)置redis開機(jī)自啟動(dòng)
切換到/etc/init.d目錄下
執(zhí)行自啟命令
chkconfig redisd on

<5>. 現(xiàn)在可以直接已服務(wù)的形式啟動(dòng)和關(guān)閉redis了
啟動(dòng):service redisd start
關(guān)閉:service redisd stop
<6>. 報(bào)錯(cuò)
/var/run/redis_6379.pid exists, process is already running or crashed

解決辦法
參考資料:[http://blog.csdn.net/luozhonghua2014/article/details/54649295]
①:用安裝文件啟動(dòng) redis-server /etc/redis/6379.conf
②:shutdown -r now 軟重啟讓系統(tǒng)自動(dòng)恢復(fù)下
<7>. 開啟redis-server提示 # Creating Server TCP listening socket *:6379: bind: Address already in use
參考文章:https://blog.csdn.net/guo13313/article/details/70666453
第一步:找到進(jìn)程
ps -ef | grep -i redis
第二步:殺死進(jìn)程
kill -9 進(jìn)程號(hào)
第三步:重新啟動(dòng)redis服務(wù)器
./redis-server

但是又出現(xiàn)了/var/run/redis_6379.pid exists, process is already running or crashed,最終找到另一篇文章:
https://blog.csdn.net/weixin_43462069/article/details/87015642
直接刪除了
5.10 用可視化工具連接 redis
參考文章:https://www.cnblogs.com/shihuibei/p/9256397.html
工具:RedisDesktopManager
主機(jī) ip:用虛擬機(jī) ip addr 命令查看
Auth :就是 redis.conf 文件中設(shè)置的“#requirepass foobared去掉注釋,foobared改為自己的密碼”
image.png
5.11 測(cè)試redis是否安裝成功
參考文章:http://www.cnblogs.com/wenqiang/p/5506744.html
6. 安裝 tomcat 7
參考文章:https://blog.51cto.com/13525470/2073657
6.1 下載源碼安裝包
6.1.1 找到下載地址:

6.1.2 下載:
wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-7/v7.0.94/bin/apache-tomcat-7.0.94.tar.gz
6.1.3 解壓
tar xvf apache-tomcat-7.0.94.tar.gz -C /usr/local/
6.1.4 移動(dòng)
mv /usr/local/apache-tomcat-7.0.94/ /usr/local/tomcat/


6.1.5 重新命名文件路徑
/usr/local/tomcat_cluster/tomcat1
參考 https://blog.csdn.net/loveer0/article/details/82591266 中的集群概念。
6.2 配置Tomcat 環(huán)境變量
6.2.1 定義在單個(gè)tomcat的啟動(dòng)和關(guān)閉程序里
執(zhí)行命令1:vim /usr/local/tomcat/bin/startup.sh
執(zhí)行命令2:vim /usr/local/tomcat/bin/shutdown.sh
代碼如下:
export JAVA_HOME=/usr/local/java/jdk1.8.0_201
export TOMCAT_HOME=/usr/local/tomcat_cluster/tomcat1
export CATALINA_HOME=${TOMCAT_HOME}
export CLASS_PATH=.:${JAVA_HOME}/bin/lib:${JAVA_HOME}/jre/lib:${JAVA_HOME}/lib/tool.jar
export PATH=$PATH:${JAVA_HOME}/bin:${TOMCAT_HOME}/bin
執(zhí)行命令3:vim /etc/profile
也加上這段代碼

執(zhí)行命令4:. /etc/profile
6.2 測(cè)試是否安裝成功
在瀏覽器地址欄輸入 http://ip:8080訪問

7. 安裝 Nginx
參考文章:https://www.cnblogs.com/boonya/p/7907999.html
7.1 安裝 PCRE pcre-devel
yum install -y pcre pcre-devel
7.2 安裝 zlib
yum install -y zlib zlib-devel
7.3 安裝OpenSSL
yum install -y openssl openssl-devel
7.4 下載 Nginx 源碼安裝包
去官網(wǎng)地址[https://nginx.org/en/download.html]下載 ,找到穩(wěn)定版;
在 /usr/local/src 目錄下,執(zhí)行 wget https://nginx.org/download/nginx-1.14.2.tar.gz
7.5 解壓 ,編譯
tar -zxvf nginx-1.14.2.tar.gz
cd nginx-1.14.2
./configure
make
make install
7.6 啟動(dòng) Nginx
查找安裝路徑 whereis nginx
cd /usr/local/nginx/sbin/
./nginx
./nginx -s stop
./nginx -s quit
./nginx -s reload
參考文章:https://www.cnblogs.com/wyd168/p/6636529.html
80端口在安裝 Tomcat 時(shí),被占用,所以修改 Nginx 端口

關(guān)于解決端口被占用,重啟等操作,見https://www.cnblogs.com/boonya/p/7907999.html

效果如下:

7.6 設(shè)置開機(jī)自啟動(dòng)

8. 配置 Nginx 指向某個(gè)靜態(tài)頁(yè)面
我在 /usr/local/nginx/html 目錄下新建了一個(gè)文件夾 webhis,然后配置Nginx如下:

8.1 如何解壓 rar 文件
參考:https://www.cnblogs.com/qinglin/p/9007939.html

報(bào)錯(cuò):/usr/local/bin/rar: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
參考:https://blog.csdn.net/hjjhce/article/details/47751815



