在 CentOS 6.4 VPS 上安装和保护 phpMyAdmin 的方法

news2024/9/23 23:28:59

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。

简介


许多网站和应用程序需要数据库来存储和管理大量信息。MySQL 和 MariaDB 是流行的数据库管理系统,因为它们具有灵活性、强大性和普及性。

对于许多用户来说,通过命令行管理数据库是困难的。对于那些更喜欢使用 Web 界面的用户来说,phpMyAdmin 是命令驱动管理的一个很好的替代方案。

在本指南中,我们将介绍如何在 CentOS 6.4 VPS 上安装和配置 phpMyAdmin。该过程对于其他版本应该是相似的。

步骤一 — 安装 LAMP 堆栈

在安装 phpMyAdmin 之前,我们需要在服务器上安装 Apache、MySQL 和 PHP。连同底层操作系统一起,这被称为 LAMP 堆栈(Linux、Apache、MySQL、PHP)。

我们可以通过输入以下命令从默认的 yum 仓库安装必要的组件:

sudo yum install httpd mysql-server php php-mysql

Web 服务器、数据库服务器和动态处理语言将被安装在您的服务器上,并准备好使用。

步骤二 — 配置 LAMP 堆栈

接下来,我们需要配置刚刚安装的组件。

启动 Web 服务器

我们可以通过启动 Apache 来开始。以下命令将启动 Apache:

sudo service httpd start

通过在 Web 浏览器中访问服务器的 IP 地址来检查服务器是否正在运行:

http://server_IP_addr

您应该看到默认的 CentOS Apache 测试页面。如果您不想使用浏览器,您可以使用 curl 查看页面的原始 HTML:

curl 127.0.0.1

结果的第一部分应该看起来像这样的文本:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
	<head>
		<title>Apache HTTP Server Test Page powered by CentOS</title>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
		<style type="text/css">
. . .

如果您能看到这个页面,那么 Web 服务器正在运行。

配置 MySQL

接下来,我们可以配置 MySQL,我们的数据库。通过输入以下命令来启动服务:

sudo service mysqld start

我们应该首先运行一个简单的安全脚本,它将锁定一些危险的默认设置。它还将允许我们为 root 管理用户设置数据库密码:

sudo mysql_secure_installation

第一个问题应该要求您输入 MySQL 数据库的当前密码。由于我们还没有配置密码,只需按 ENTER 键。然后,您可以立即选择并确认数据库密码。按 ENTER 键通过所有剩余提示以选择默认值。

您可以通过输入以下命令来测试您的数据库密码是否设置正确:

mysql -u root -p

系统会提示您输入刚刚设置的数据库密码。输入后,您应该进入一个 MySQL 会话:

输入 exit 以返回到您的 shell 会话:

exit

您的数据库现在已经准备就绪。

步骤三 — 安装 phpMyAdmin

现在,我们准备安装 phpMyAdmin 软件包。这个软件在 CentOS 6 默认仓库中不可用。但是,它在 EPEL 仓库(企业 Linux 的额外软件包)中可用。

我们可以通过输入以下命令将 EPEL 仓库添加到我们的系统中:

sudo yum install epel-release

接受新仓库后,您可以通过输入以下命令安装 phpMyAdmin 软件包:

sudo yum install phpmyadmin

这将安装 phpMyAdmin。不过,我们仍然需要对其进行配置。

步骤四 — 配置 phpMyAdmin

出于安全目的,我们应该将对 phpMyAdmin 界面的访问限制为特定的 IP 地址。

查找您的 IP 地址

您需要知道您计划用来访问数据库的计算机的 IP 地址。这是一个安全预防措施,以防止未经授权的人连接。

注意:这不是您的 VPS 的 IP 地址,而是您家庭或工作计算机的 IP 地址。

您可以通过访问以下网站之一来了解外部网络如何看到您的 IP 地址:

  • What’s My IP Address?
  • What’s My IP?
  • My IP Address

比较几个不同的网站,并确保它们都给出相同的值。记下这个值。

配置 Apache 文件

phpMyAdmin 软件包安装了一个 Apache 虚拟主机文件,用于配置 Web 访问。使用以下命令打开该文件:

sudo nano /etc/httpd/conf.d/phpMyAdmin.conf

默认情况下,此配置仅允许从托管软件的同一台计算机访问。由于数据库、Web 服务器和管理软件托管在 VPS 上,而不是您的家用计算机,因此我们需要调整这些值。

这就是您家用计算机的 IP 信息派上用场的地方。我们将把所有对 127.0.0.1 的引用都改为您找到的 IP 地址。

您需要更改四个位置:

. . .
Require ip your_workstation_IP_address
. . .
Allow from your_workstation_IP_address
. . .
Require ip your_workstation_IP_address
. . .
Allow from your_workstation_IP_address
. . .

保存并关闭文件。

您需要使用以下命令重新启动服务器:

sudo service httpd restart

第五步 — 查看结果!

您的界面现在应该已经配置好,可以访问了。

将您的 Web 浏览器指向您的 VPS IP 地址,后面加上 “/phpmyadmin”

http://VPS_IP_address/phpmyadmin

系统会要求您登录。使用用户名 root 和您在 MySQL 配置阶段选择的密码。

phpMyAdmin 登录提示

提供请求的凭据后,您将可以访问 phpMyAdmin 界面:

phpMyAdmin 主界面

恭喜,您现在可以开始通过 Web 界面管理您的数据库软件了!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1924670.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

redisTemplate报错为nil,通过redis-cli查看前缀有乱码

public void set(String key, String value, long timeout) {redisTemplate.opsForValue().set(key, value, timeout, TimeUnit.SECONDS);} 改完之后 public void set(String key, String value, long timeout) {redisTemplate.setKeySerializer(new StringRedisSerializer()…

前端工程化10-webpack静态的模块化打包工具之各种loader处理器

9.1、案例编写 我们创建一个component.js 通过JavaScript创建了一个元素&#xff0c;并且希望给它设置一些样式&#xff1b; 我们自己写的css,要把他加入到Webpack的图结构当中&#xff0c;这样才能被webpack检测到进行打包&#xff0c; style.css–>div_cn.js–>main…

万界星空科技MES系统:食品加工安全的实时监控与智能管理

万界星空科技MES系统通过集成多种技术和功能&#xff0c;能够实时监控食品加工过程中各环节的安全风险。以下是对该系统如何实现实时监控的详细分析&#xff1a; 一、集成传感器和数据分析技术 万界星空科技MES系统利用集成的传感器和数据分析技术&#xff0c;实时监控生产过程…

Linux rsync文件同步工具

scp的不足 1. 性能问题 单线程传输 SCP只使用单线程进行传输&#xff0c;这意味着在传输大文件或大量小文件时&#xff0c;其传输速度和效率可能不如其他多线程工具。 无法压缩数据传输 SCP不支持内置的压缩机制&#xff0c;这在传输大文件时会导致带宽使用效率较低。 2.…

神经网络以及简单的神经网络模型实现

神经网络基本概念&#xff1a; 神经元&#xff08;Neuron&#xff09;&#xff1a; 神经网络的基本单元&#xff0c;接收输入&#xff0c;应用权重并通过激活函数生成输出。 层&#xff08;Layer&#xff09;&#xff1a; 神经网络由多层神经元组成。常见的层包括输入层、隐藏层…

【MySQL 进阶】MySQL 程序 -- 详解

一、MySQL 程序简介 MySQL 安装完成通常会包含如下程序&#xff1a; 1、Linux 系统 程序⼀般在 /usr/bin 目录下&#xff0c;可以通过命令查看&#xff1a; 2、Windows系统 目录&#xff1a;你的安装路径\MySQL Server 8.0\bin&#xff0c;可以通过命令查看&#xff1a; 可…

Vue el-input 限制输入内容

&#x1f914;日常项目中经常遇到既要el-input的样式&#xff0c;又要el-input-number限制&#xff0c;所以需要绑定input事件进行约束输入限制。 以下使用自定义指令进行约束el-input输入的值&#xff0c;便于后期统一管理和拓展。 预览 代码 <!DOCTYPE html> <ht…

STM32入门开发操作记录(二)——LED与蜂鸣器

目录 一、工程模板二、点亮主板1. 配置寄存器2. 调用库函数 三、LED1. 闪烁2. 流水灯 四、蜂鸣器 一、工程模板 参照第一篇&#xff0c;新建工程目录ProjectMould&#xff0c;将先前打包好的Start&#xff0c;Library和User文件^C^V过来&#xff0c;并在Keil5内完成器件支持包的…

[MySQL][表操作]详细讲解

目录 1.创建表1.基本语法2.创建表案例 2.查看表结构3.修改表1.语法2.示例3.modify和change区别 4.删除表 1.创建表 1.基本语法 语法&#xff1a; CREATE TABLE table_name (field1 datatype,field2 datatype,field3 datatype ) character set 字符集 collate 校验规则 engin…

阿里云产品流转

本文主要记述如何使用阿里云对数据进行流转&#xff0c;这里只是以topic流转&#xff08;再发布&#xff09;为例进行说明&#xff0c;可能还会有其他类型的流转&#xff0c;不同服务器的流转也可能会不一样&#xff0c;但应该大致相同。 1 创建设备 具体细节可看&#xff1a;…

STM32F103定时器中断详解

目录 目录 目录 前言 一.什么是定时器 1.1 STM32F103定时器概述 1.2基本定时器 1.2通用定时器 1.3高级定时器 1.4 三种定时器区别 基本定时器&#xff08;Basic Timer&#xff09; 通用定时器&#xff08;General-Purpose Timer&#xff09; 高级定时器&#xff08;Advanced Ti…

企业网三层架构

企业网三层架构&#xff1a;是一种层次化模型设计&#xff0c;旨在将复杂的网络设计分成三个层次&#xff0c;每个层次都着重于某些特定的功能&#xff0c;以提高效率和稳定性。 企业网三层架构层次&#xff1a; 接入层&#xff1a;使终端设备接入到网络中来&#xff0c;提供…

提高使用安全,智慧校园在线用户功能概述

智慧校园系统融入了一个查看当前在线用户的功能&#xff0c;这一设计旨在为管理人员提供一个实时的窗口&#xff0c;洞悉校园平台的即时活跃情况&#xff0c;确保系统的高效运作与环境安全。通过这一功能&#xff0c;管理员能够一目了然地看到所有正活跃在平台上的用户群体&…

『 Linux 』匿名管道应用 - 简易进程池

文章目录 池化技术进程池框架及基本思路进程的描述组织管道通信建立的潜在问题 任务的描述与组织子进程读取管道信息控制子进程进程退出及资源回收 池化技术 池化技术是一种编程技巧,一般用于优化资源的分配与复用; 当一种资源需要被使用时这意味着这个资源可能会被进行多次使…

GuLi商城-商品服务-API-品牌管理-JSR303分组校验

注解:@Validated 实体类: package com.nanjing.gulimall.product.entity;import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.nanjing.common.valid.ListValue; import com.nanjing.common.valid.Updat…

代码随想录——不同路径Ⅱ(Leetcode 63)

题目链接 动态规划 class Solution {public int uniquePathsWithObstacles(int[][] obstacleGrid) {int m obstacleGrid.length;int n obstacleGrid[0].length;int[][] dp new int[m][n];// 遇到障碍则从(0,0)到达for(int i 0; i < m && obstacleGrid[i][0] …

【C++】初始化列表”存在的意义“和“与构造函数体内定义的区别“

构造函数是为了方便类的初始化而存在&#xff0c;而初始化时会遇到const成员变量、引用成员变量等&#xff0c;这些变量不允许函数内赋值&#xff0c;必须要在初始化时进行赋值&#xff0c;所以就有了初始化列表&#xff0c;初始化列表只能存在于类的构造函数中&#xff0c;用于…

百日筑基第二十天-一头扎进消息队列3-RabbitMQ

百日筑基第二十天-一头扎进消息队列3-RabbitMQ 如上图所示&#xff0c;RabbitMQ 由 Producer、Broker、Consumer 三个大模块组成。生产者将数据发送到 Broker&#xff0c;Broker 接收到数据后&#xff0c;将数据存储到对应的 Queue 里面&#xff0c;消费者从不同的 Queue 消费数…

PySide(PyQt),csv文件的显示

1、正常显示csv文件 import sys import csv from PySide6.QtWidgets import QApplication, QMainWindow, QTableWidget, QTableWidgetItem, QWidgetclass CSVTableWidgetDemo(QMainWindow):def __init__(self):super().__init__()# 创建显示控件self.widget QWidget(self)sel…

Hadoop-28 ZooKeeper集群 ZNode简介概念和测试 数据结构与监听机制 持久性节点 持久顺序节点 事务ID Watcher机制

章节内容 上节我们完成了&#xff1a; ZooKeeper 集群配置ZooKeeper 集群启动ZooKeeper 集群状况查看Follower 和 Leader 节点 背景介绍 这里是三台公网云服务器&#xff0c;每台 2C4G&#xff0c;搭建一个Hadoop的学习环境&#xff0c;供我学习。 之前已经在 VM 虚拟机上搭…