阿里云Linux CentOS 7.6环境下jdk、nginx、mysql和redis的安装

本文章是在阿里云Linux CentOS 7.6环境下安装和配置基础软件(jdk、nginx、mysql、redis)的过程,各个基础软件的版本如下所示:

jdk: jdk-8u191-linux-x64

nginx: nginx-1.14.2

mysql: mysql-5.7.24-1.el7.x86_64

redis: redis-5.0.3

注意:不同的操作系统和基础软件版本,安装或配置可能会存在差异,本文只保证如上所列版本安装和配置的正确性。


我在/mnt下挂载了一个数据盘,基础软件我都先下载到此目录后再安装,如果你没有此目录的话,可以mkdir创建一个或根据自己的实际情况调整。

1. 安装jdk

1). 使用root用户,在/mnt下创建java目录。

运行命令:mkdir /mnt/java

2). 进入/mnt/java目录,下载jdk安装包。

运行命令:wget https://download.oracle.com/otn-pub/java/jdk/8u191-b12/2787e4a523244c269598db4e85c51e0c/jdk-8u191-linux-x64.tar.gz

3). 在/mnt/java目录下,解压安装包。

运行命令:tar -zxvf jdk-8u191-linux-x64.tar.gz

解压后得到文件jdk1.8.0_191。

4). 在/usr/local目录下创建java目录。

运行命令:mkdir /usr/local/java

5). 将/mnt/java/jdk1.8.0_191移动到/usr/local/java目录下。

运行命令:mv /mnt/java/jdk1.8.0_191 /usr/local/java/.

6). 配置JDK环境变量。

运行命令:vi /etc/profile

在文件末尾添加如下内容,并保存:


export JAVA_HOME=/usr/local/java/jdk1.8.0_191

export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar

export PATH=$PATH:$JAVA_HOME/bin


7). 让配置生效。

运行命令:source /etc/profile

8). 查看JDK环境变量是否配置成功。

运行命令:java -version

如果出现java版本信息,则说明JDK环境变量配置成功。

2. 安装nginx

1). 使用root用户,在/mnt下创建nginx目录。

运行命令:mkdir nginx

2). 进入/mnt/nginx目录,下载nginx安装包。

运行命令: wget http://nginx.org/download/nginx-1.14.2.tar.gz

3). 在/mnt/nginx目录下,解压安装包。

运行命令:tar -zxvf nginx-1.14.2.tar.gz

解压后得到文件nginx-1.14.2。

4). 在安装nginx之前,请确保系统中已经安装过了相关组件:gcc、openssl、pcre、zlib,否则需要先安装相关组件。

5). gcc默认是安装的,可通过命令:gcc -v查看,如已安装则跳过此步,否则执行如下命令安装。

运行命令:yum install gcc-c++

6). 安装openssl,如已安装则跳过此步。

运行命令: yum -y install openssl openssl-devel

7). 安装pcre,如已安装则跳过此步。

运行命令:yum -y install pcre pcre-devel

8). 安装zlib,如已安装则跳过此步。

运行命令:yum -y install zlib zlib-devel

9). 安装nginx,进入/mnt/nginx/nginx-1.14.2目录。

运行命令:./configure --prefix=/usr/local/nginx --sbin-path=/usr/local/nginx/sbin/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --with-http_stub_status_module --with-http_ssl_module --with-http_realip_module  && make && make install

--prefix nginx的安装根路径

--sbin nginx的启动程序路径

--conf-path nginx的配置路径

--with-* nginx需要加载的模块,如果需要nginx支持https,则需要加入http_ssl_module模块

以上配置参数可根据自身实际情况相应调整。

10). 配置nginx环境变量。

运行命令:vi /etc/profile

在文件末尾添加如下内容:


export NGINX_HOME=/usr/local/nginx

export PATH=$PATH:$NGINX_HOME/sbin


11). 让配置生效。

运行命令:source /etc/profile

12). 设置nginx为系统服务。

在/lib/systemd/system目录下创建nginx.service文件,

运行命令:vi /lib/systemd/system/nginx.service

输入如下内容,nginx启动程序路径根据自身实际情况调整:


[Unit]

Description=nginx service

After=network.target

[Service]

Type=forking

ExecStart=/usr/local/nginx/sbin/nginx

ExecReload=/usr/local/nginx/sbin/nginx -s reload

ExecStop=/usr/local/nginx/sbin/nginx -s quit

PrivateTmp=true

[Install]

WantedBy=multi-user.target


13). 设置开机自启动。

运行命令:systemctl enable nginx

14). 以后就可使用如下命令,来管理nginx了:


# systemctl start nginx               启动服务

# systemctl stop nginx               停止服务

# systemctl restart nginx             重新启动服务

# systemctl list-units --type=service     查看所有已启动的服务

# systemctl status nginx                查看服务当前状态

# systemctl enable nginx               设置开机自启动

#systemctl disable nginx               停止开机自启动


3. 安装mysql

1). 使用root用户,在/mnt下创建mysql目录。

运行命令:mkdir mysql

2). 进入/mnt/mysql目录,下载mysql安装包。

运行命令:wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24-1.el7.x86_64.rpm-bundle.tar

3). 在/mnt/mysql目录下,解压安装包。

运行命令:tar -xvf mysql-5.7.24-1.el7.x86_64.rpm-bundle.tar

解压后会得到多个rpm包,这里我只安装mysql server,但它需要依赖其它几个包,依赖关系如下:


mysql-community-common-5.7.24-1.el7.x86_64.rpm  

mysql-community-libs-5.7.24-1.el7.x86_64.rpm             --(依赖于common)  

mysql-community-client-5.7.24-1.el7.x86_64.rpm          --(依赖于libs)  

mysql-community-server-5.7.24-1.el7.x86_64.rpm         --(依赖于client、common) 


4). 安装mysql server,依次运行如下命令,顺序不能颠倒:

rpm -ivh mysql-community-common-5.7.24-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-5.7.24-1.el7.x86_64.rpm

rpm -ivh mysql-community-client-5.7.24-1.el7.x86_64.rpm

rpm -ivh mysql-community-server-5.7.24-1.el7.x86_64.rpm

我在安装过程中出现了两个错误,如果你也有出现同样错误,可按照如下方法解决,否则跳过此节。

错误一如下:

请先卸载mariadb-libs-1:5.5.60-1.el7_5.x86_64(还可通过命令rpm

-qa | grep mariadb查看安装了mariadb哪些包,也可一起卸载掉)。

运行命令: rpm -e mariadb-libs-1:5.5.60-1.el7_5.x86_64 --nodeps

错误二如下:

请先安装libaio依赖包。

运行命令:yum install libaio.x86_64

5). 初始化mysql,有两种方式可选择,此处我选择方式一。

运行命令:

#方式一:mysql的root用户创建随机密码

mysqld --initialize --user=mysql

# 方式二:不为mysql的root用户创建密码

mysqld --initialize-insecure --user=mysql

如果当前用户是root,且没有创建mysql用户则需要带--user参数,且值为mysql。如果当前用户是mysql,则可不带--user参数。

按方式一执行后,会在/var/log/mysqld.log文件里生成随机密码,此处为:Kp.Qsu3aXWRI,如下所示:

6). 设置开机启动。

运行命令: systemctl enable mysqld

以后就可以使用如下命令,来启停mysql了:


# systemctl start mysqld              启动服务

# systemctl stop mysqld                停止服务

# systemctl restart mysqld              重新启动服务

# systemctl list-units --type=service     查看所有已启动的服务

# systemctl status mysqld              查看服务当前状态

# systemctl enable mysqld             设置开机自启动

#systemctl disable mysqld             停止开机自启动


7). 启动mysql。

运行命令:systemctl start mysqld

8). 登录mysql。

运行命令:mysql -uroot -p

输入刚才生成的密码。

9). 登录之后,修改root用户密码(否则有些命令执行不了,需要修改密码后才能执行)。

运行命令:alter user 'root'@'localhost' identified by '密码';

如果要root用户在任何机器都可连接mysql,需要将localhost改为%。

10). 创建数据库。

运行命令:create database 数据库名 default charset utf8 collate utf8_general_ci;

11). 创建用户。

运行命令:create user '用户名'@'%' identified by '密码';

查看用户命令:select user,host from mysql.user;

12). 为用户分配某个数据库的权限。

运行命令:grant all privileges on 数据库名.* to '用户名'@'%' with grant option;

13). 刷新权限。

运行命令:flush privileges;

查看用户权限命令: show grants for 用户名;

14). 设置表名不区分大小写。

运行命令: show variables like "%case%";

如果lower_case_file_system=OFF,则需要修改lower_case_table_names=1,修改/etc/my.cnf文件。

在操作系统命令行下,执行:vi /etc/my.cnf

在[mysqld]节点最后添加如下一行: lower_case_table_names=1

最后重启mysql服务,让设置生效,运行命令:systemctl restart mysqld

4. 安装redis

1). 使用root用户,在/mnt下创建redis目录。

运行命令:mkdir redis

2). 进入/mnt/redis目录,下载redis安装包。

运行命令:wget http://download.redis.io/releases/redis-5.0.3.tar.gz

3). 在/mnt/redis目录下,解压安装包。

运行命令:tar -zxvf redis-5.0.3.tar.gz

解压后得到文件redis-5.0.3。

4). 进入redis-5.0.3目录, 编译redis。

运行命令:make

5). 编译成功后,在/usr/local目录下创建redis目录。

运行命令:mkdir /usr/local/redis

6). 将/mnt/redis/redis-5.0.3移动到/usr/local/redis目录下。

运行命令:mv /mnt/redis/redis-5.0.3 /usr/local/redis/.

7). 配置redis。

运行命令:vi /usr/local/redis/redis-5.0.3/redis.conf


修改daemonize属性的值为:yes             #设置redis为后台启动

修改requirepass属性的值为:密码          #设置redis的连接密码

修改bind属性的值为:0.0.0.0                  #设置redis服务绑定的ip,默认127.0.0.1,只能本机连接,0.0.0.0表示任何地址都可连接


8). 配置redis环境变量。

运行命令:vi /etc/profile

在文件末尾添加如下内容:


export REDIS_HOME=/usr/local/redis/redis-5.0.3

export PATH=$PATH:$REDIS_HOME/src


9). 让配置生效。

运行命令:source /etc/profile

10). 设置redis为系统服务。

在/lib/systemd/system目录下创建redis.service文件,

运行命令:vi /lib/systemd/system/redis.service

输入如下内容,redis启动程序和配置路径根据自身实际情况调整:


[Unit]

Description=RedisIn-Memory Data Store

After=network.target

[Service]

ExecStart=/usr/local/redis/redis-5.0.3/src/redis-server /usr/local/redis/redis-5.0.3/redis.conf  --daemonize no

ExecStop=/usr/local/redis/redis-5.0.3/src/redis-cli shutdown

[Install]

WantedBy=multi-user.target


11). 加入开机自启动。

运行命令:systemctl enable redis

以后就可使用如下命令,来启停redis了:


# systemctl start redis               启动服务

# systemctl stop redis               停止服务

# systemctl restart redis             重新启动服务

# systemctl list-units --type=service     查看所有已启动的服务

# systemctl status redis                查看服务当前状态

# systemctl enable redis               设置开机自启动

#systemctl disable redis               停止开机自启动


您的赞赏是我继续写作的最大动力!!!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,029评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,395评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,570评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,535评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,650评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,850评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,006评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,747评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,207评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,536评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,683评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,342评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,964评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,772评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,004评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,401评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,566评论 2 349

推荐阅读更多精彩内容