• 玩转Linux—如何在Linux环境中部署MySQL、Redis和nginx


    1、Linux常用命令 

    Linux学习之路:  VMware虚拟机安装Linux系统(详解版)

    • 查看当前文件目录:ls
    • 查看目录中文件详细信息:ll
    • 输出当前所处的目文件目录:pwd
    • Linux查看当前IP地址ifconfig
    • Windows查看当前IP地址:ipconfig
    • 新建一个文件:mkdir 文件名
    • 解压.gz文件:tar -zxvf 压缩包文件名
    • 解压.tar文件:tar -xvf 压缩包文件名
    • Linux文件系统:vim /etc/profile
      • 配置环境变量:
      1. 进入文件系统后,将光标移动到文章末尾,输入“i”,即可编辑文件,完成后按”esc“输入“:wq”即可(w:保存;q:退出)—>(不保存退出:“esc键”—":q!")
      2. 退出后,输入"source /etc/profile",使配置生效
      • 搜索指定字段:
        • /字段​     (/+要搜索的字段​​​)​​​
    • 读取文件:cat 文件路径
    • 查看JDK版本:java -version
    • 抓取某个服务的进程:ps -ef | grep mysql
    • 复制某个文件到当前目录:cp /usr/local/redis文件目录/redis.conf ./    (./ 表示当前目录)
    • 移动文件:mv redis.conf 6739.conf  (将redis.con重命名为6739.conf   也可以移动到指定目录
    • 强杀进程:kill -9 进程id
    • 删除文件:rm -f 文件绝对路径

    2、安装MySQL

    (1)下载并解压数据库文件        

    官网下载地址:
    MySQL :: MySQL Downloadsicon-default.png?t=N7T8https://www.mysql.com/downloads/

            //要注意:我们这次使用的是Linux系统,所以要下载一个linux 64位的.tar文件

    检测系统中是否有预先安装的数据库文件:

    •  抓取当前系统中有没有数据库文件:rpm -qa | grep mariadb
    • 移除系统中原有的数据库文件:

    • 解压tar文件:tar -xvf 文件夹名字

    (2)执行命令并进行安装

             将.tar文件解压后即可看到下述文件

    • 安装common

    命令:rpm -ivh mysql-community-common-8.0.16-2.el7.x86_64.rpm --nodeps --force

    • 安装libs

     命令:rpm -ivh mysql-community-libs-8.0.16-2.el7.x86_64.rpm --nodeps --force

    • 安装 client

    命令:rpm -ivh mysql-community-client-8.0.16-2.el7.x86_64.rpm --nodeps --force 

    • 安装server

    命令:rpm -ivh mysql-community-server-8.0.16-2.el7.x86_64.rpm --nodeps --force

    • 查看刚刚安装的包

    命令:rpm -qa | grep mysql 

    (3)MySQL初始化 

    命令:mysqld --initialize

            注意:如果报错以下信息:mysqld : error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

    #方案1

    yum install -y libaio

    #方案2 如果方案1安装后,继续初始化mysql没有成功,则执行该方案

    yum install -y libaio.so.1

    •  授权防火墙服务

    命令:

    #给mysql目录授权给mysql组合中的mysql用户,该步骤一般不用操作,我们使用的root用户拥有所有的权限

    chown mysql:mysql /var/lib/mysql -R;  # chown(授权);  "/var/lib/mysql"(安装目录)

    #启动MySQL服务

    systemctl start mysqld.service;

    #配置开机启动

    systemctl enable mysqld;

    • 查看数据库默认密码

    命令:cat /var/log/mysqld.log | grep password    #(grep 抓取关键字)

     拿到数据库密码后要记得复制一下

    • 连接到数据库

    命令:mysql -u root -p

    • 修改数据库密码

    命令:

    #本机修改密码

    ALTER USER ‘root’@'localhost' IDENTIFIED WITH mysql_native_password BY '1231456'; 

    #远程修改密码

    ALTER USER ‘root’@'%' IDENTIFIED WITH mysql_native_password BY '1231456'; 

    • 数据库授权远程访问

    命令:

         #创建一个能被外界所有ip访问的root用户,并且设置密码是‘123456’

            create user 'root'@'%' identfied with mysql_native_password by '123456';

         #给创建的这个root用户授权所有的表的访问权限

            grant all privileges on *.* to  'root'@'%' with grant option;

         # 授权后刷新

            flush privileges; 

            当我们执行到这一步的时候,我们还是没法连接到我们的远程数据库,原因是我们没有在防火墙上开启数据库的访问端口。 

    (4)防火墙配置

            在远程连接我们虚拟机上的数据库时,需要开启防火墙,CentOS6采用的是iptables,而CentOS7采用的是systemctl,所以下面我们采用CentOS7的配置

    #查看防火墙状态

    systemctl status firewalld

    #启动防火墙,防火墙启动后,除了22端口默认开启外,其他端口均需要手动开启

    systemctl start firewalld

    #添加端口

    firewall-cmd --zone=public --add-port=80/tcp --permanent

    firewall-cmd --zone=public --add-port=443/tcp --permanent    #https端口

    firewall-cmd --zone=public --add-port=3306/tcp --permanent   #数据库端口

    #重新加载

    firewall-cmd --reload

     (5)MySQL拓展

    • 查看mysql配置文件

    # 默认的配置文件为:/etc/my.cnf

    cat /etc/my.cnf

    • 注意

    Linux下严格区分大小写,所以我们写的SQL语句中表名也要严格区分大小写

    # 忽略大小写配置(一定要在建表之前加)

    vim /etc//my.conf

    [mysqld]

    lower_case_table_names=1 

    3、Redis服务安装

    (1)下载安装

    • 在/usr/local目录下新建redis文件夹

    命令:

    cd /usr/local

    • 在线下载

    Download | RedisRedisYou can download the last Redis source files here. For additional options, see the Redis downloads section below.Stable (7.2)Redis 7.2 …icon-default.png?t=N7T8https://redis.io/download/

    • 离线下载(*需要安装wget,不推荐使用

    命令:wget https://download.redis.io/redis-stable.tar.gz

    • 解压

    命令:tar -xzf 文件夹名字

    • 安装gcc

            由于Redis通过源码安装,依赖gcc编译器,首要要确定机器的gcc版本,保证其gcc版本在4.2以上

    #查看gcc版本(如果没有或者版本较低,需要重新安装)

    gcc -v

    #安装命令

    yum install gcc

    • 安装redis

    #进入redis目录

    cd redis目录

    #编译安装

    make MALLOC=libc

    #编译测试

    make test

    若编译测试出现问题,则直接安装肯定也是不通过的,我是遇到了下面的问题

    解决方案:

    #安装tcl包

    yum install tcl

    安装完成后要再次执行make test,直到输出成功为止

    #测试成功后,安装redis

    cd src && make install

    • 启动redis服务

    命令:进入src目录后执行    ./redis-server

    这种启动方式会随着后台的推出而关闭,所以我们要将该服务用后台启动的方式启动 

    (2)将redis服务配置为后台服务

    •  修改redis.conf文件

    命令:vim redis.conf

    将 ‘daemonize no’ 改为 ‘daemonize yse’

    • 将redis.conf复制到/etc/redis目录下,并改名为‘6379.conf’

    命令:

    cd /etc

    mkdir redis

    cd redis

    cp /usr/local/redis文件目录/redis.conf ./     #复制redis.conf到当前目录(./ 表示当前目录)

    •  复制启动脚本到/etc/rc.d/init.d/,并改名为redisd(redisd就是我们的启动脚本)

    #启动脚本在/redis目录/utils目录下

    cp -f /usr/local/redis/redis目录/utils/redis_init_script /etc/rc.d/init.d/redisd

    • 修改复制后的redis文件,使之能成为服务

    cd /etc/rc.d/init.d/

    vim redisd

    修改EXEC、CLIEXEC的路径

    #原内容

    EXEC=/usr/local/bin/redis-server

    CLIEXEC=/usr/local/bin/redis-cli

    #修改后的内容

    EXEC=/usr/local/redis/redis目录/src/redis-server

    CLIEXEC=/usr/local/redis/redis目录/src/redis-cli

    在$EXEC $CONF后面加上$

    找到bind 将他的值改为0.0.0.0(表示所有ip都可以连接)

    esc  :wq  保存后退出

    添加开机启动

    chkonfig redisd on

    启动

    service redisd start

    当你启动成功后,我们的redis就被作为一个服务并且开机自启动

    停止服务

    service redisd stop

    (3)修改redis密码

    #编辑redis文件下的6379.conf文件

    vim /etc/redis/6379.conf

    #找到requirepass字段

    /requirepass

    #进入编辑模式

    i

    #修改requirepass的值即可

    #保存并退出

    esc ——》 :wq 

    #重启redis服务

    service redisd stop

    service redisd start

    • 如何使用redis密码

    redis-cli

    auth 密码

    set ** (定义变量)

    get ** (获取变量)

    (4)用远程客户端连接redis

    我们第一次连接redis的时候需要检测防火墙是否开启,并且将redis的端口开放

    #查看防火墙状态

    systemctl status firewalld

    #添加端口

    firewall-cmd --zone=pubilc --add-port=6379/tcp --permanent

    #重新加载

    firewall-cmd --reload

    4、nginx安装 

    (1)下载

    nginx: downloadicon-default.png?t=N7T8https://nginx.org/en/download.html下载后直接将安装包上传至CentOS下的/usr/local目录下

    • wegt直接下载

    cd /usr/local

    wegt http://nginx.org/download/nginx-1.25.2.tar.gz

    (2)安装

    • 解压

     命令:tar -zxvf 压缩文件     (解压后不要改名字)

    • 安装前准备

    安装前先安装nginx所需要的依赖库,如果缺少依赖库,可能会安装失败

     yum install gcc-c++

     yum install pcre

     yum install pcre-devel

     yum install zlib

     yum install zlib-devel

     yum install openssl

     yum install openssl-devel

    • 进入nginx-1.25.2目录 ,并执行以下配置命令

    cd nginx-1.25.2

    ./configure     #执行configure文件

            configure操作会检测当前系统环境,以确保能成功安装nginx,如果出错,请检查上述安装前依赖包是否已经安装。

    • 执行make安装

    注意:下面2步会将nginx安装到/usr/local/nginx目录下,所以请勿占用nginx目录名

    #make

    make install

    如果上述2步操作未报错,那么切换到上一级目录,会发现nginx目录已经存在了

    (3)配置nginx开机启动

    切换到/lib/systemd/system/目录,创建nginx.service文件

    cd /lib/systemd/system/

    vim nginx.service

    添加如下内容

    [Unit]

    Description=nginx

    After=network.target

    [Service]

    Type=forking

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

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

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

    PrivateTmp=true

    [Install]

    WantedBy=multi-user.target

    退出并保存文件,执行如下命令,让nginx开机启动

    systemctl start nginx.service

    #启动nginx

     systemctl start nginx.service

    #结束nginx

     systemctl stop nginx.service

    #重启nginx

     systemctl restart nginx.service

    (4) 检验是否安装成功

            在浏览器访问http://192.168.2.204/

    视频学习地址:40.1Linux下载安装_哔哩哔哩_bilibili40.1Linux下载安装是CentOS安装Java环境部署Nginx项目(Linux系统)的第1集视频,该合集共计6集,视频收藏或关注UP主,及时了解更多相关视频内容。icon-default.png?t=N7T8https://www.bilibili.com/video/BV1gt411A798?p=1&vd_source=a1da35b9452502cc62a9b06ffba55be2

    持续跟新中,敬请期待~~~~ 

  • 相关阅读:
    Self-Supervised Exploration via Disagreement论文笔记
    【Spring】实例化bean的三种方式、bean的生命周期控制操作(代码解释)
    Taurus.MVC WebMVC 入门开发教程2:一个简单的页面呈现
    Maven是什么?手把手先创建个Maven项目
    20240311 大模型快讯
    C# 实现迷宫游戏
    位运算【算法基础】
    信息发布门槛低,移动互联网时代下的网络舆情如何防控?
    kafka修改对应topic的日志保存周期
    centos7安装mysql5.7
  • 原文地址:https://blog.csdn.net/io_123io_123/article/details/133529260