实用指南:开源 Linux 服务器与中间件(七)数据库--MySQL

news/2025/11/15 22:17:13/文章来源:https://www.cnblogs.com/tlnshuju/p/19226391

实用指南:开源 Linux 服务器与中间件(七)数据库--MySQL

2025-11-15 22:15  tlnshuju  阅读(0)  评论(0)    收藏  举报

      文章的目的记录所使用的的Linux服务器和中间件的配置和使用,防止时间太长忘记,进行重复工作。

相关链接:

开源 Linux 服务器与中间件(一)基本介绍

开源 Linux 服务器与中间件(二)嵌入式Linux服务器和中间件

开源 Linux 服务器与中间件(三)服务器--Nginx

开源 Linux 服务器与中间件(四)服务器--Tomcat

开源 Linux 服务器与中间件(五)服务器--Boa

推荐链接:

linux C 语言开发 (一) Window下用gcc编译和gdb调试

linux C 语言开发 (二) VsCode远程开发 linux

linux C 语言开发 (三) 建立云服务器

linux C 语言开发 (四) linux系统常用命令

linux C 语言开发 (五) linux系统目录结构

linux C 语言开发 (六) 程序的编辑和编译(vim、gcc)

linux C 语言开发 (七) 文件 IO 和标准 IO

linux C 语言开发 (八) 进程基础

linux C 语言开发 (九) 进程间通讯--管道

linux C 语言开发 (十) 进程间通讯--信号

linux C 语言开发 (十一) 进程间通讯--共享内存

linux C 语言开发 (十二) 进程间通讯--消息队列

Linux C到Android App开发推荐链接(入门十二章):

开源 java android app 开发(一)开发环境的搭建_csdn 开源 java android app-CSDN博客

开源 java android app 开发(一)开发环境的搭建-CSDN博客

开源 java android app 开发(二)工程文件结构-CSDN博客

开源 java android app 开发(三)GUI界面布局和常用组件-CSDN博客

开源 java android app 开发(四)GUI界面重要组件-CSDN博客

开源 java android app 开发(五)文件和数据库存储-CSDN博客

开源 java android app 开发(六)多媒体使用-CSDN博客

开源 java android app 开发(七)通讯之Tcp和Http-CSDN博客

开源 java android app 开发(八)通讯之Mqtt和Ble-CSDN博客

开源 java android app 开发(九)后台之线程和服务-CSDN博客

开源 java android app 开发(十)广播机制-CSDN博客

开源 java android app 开发(十一)调试、发布-CSDN博客

开源 java android app 开发(十二)封库.aar-CSDN博客

linux C到.net mvc开发推荐链接:

开源C# .net mvc 开发(一)WEB搭建_c#部署web程序-CSDN博客

开源 C# .net mvc 开发(二)网站快速搭建_c#网站开发-CSDN博客

开源 C# .net mvc 开发(三)WEB内外网访问(VS发布、IIS配置网站、花生壳外网穿刺访问)_c# mvc 域名下不可訪問內網,內網下可以訪問域名-CSDN博客

开源 C# .net mvc 开发(四)工程结构、页面提交以及显示_c#工程结构-CSDN博客

开源 C# .net mvc 开发(五)常用代码快速开发_c# mvc开发-CSDN博客、

内容:MySQL 数据库的的安装,测试,以及页面修改。

目录

1.MySQL 的功能和使用场景

2.MySQL 如何安装

3.MySQL 的测试和应用

一、MySQL 的功能和使用场景

MySQL 是一个关系型数据库管理系统,它是目前最流行的开源数据库之一,由 Oracle 公司开发和维护。

核心功能:

  1. 数据存储与管理:以表的形式存储数据,每个表由行和列组成,结构清晰。

  2. SQL 支持:完全支持 SQL 语言,用于查询、插入、更新、删除数据,以及创建和修改数据库结构。

  3. 事务支持:支持事务,可以确保一系列数据库操作要么全部成功,要么全部失败,保证数据的一致性和完整性。

  4. 高并发与性能:具有良好的多用户支持和高并发处理能力,能够处理大量同时发生的请求。

  5. 数据安全:提供用户权限管理,可以精细控制每个用户对数据库、表甚至列的访问权限。

  6. 索引:支持创建索引,极大地加快了数据的查询速度。

  7. 主从复制:支持主从复制,可以将数据从一个数据库服务器复制到一个或多个从服务器,用于数据备份、读写分离和高可用性。

  8. 存储过程和触发器:支持存储过程和触发器,可以在数据库服务器端执行复杂的业务逻辑。

主要用途:

  • Web 应用:它是 LAMP 和 LEMP 技术栈中的 “M”,为无数的网站和 Web 应用提供后端数据存储,例如 WordPress、Drupal、Joomla 等。

  • 数据仓库:用于存储和分析大量的业务数据。

  • 日志记录:存储应用程序、系统的运行日志。

  • 嵌入式系统:由于其轻量级和高性能,也常被用于嵌入式数据库场景。

二、MySQL 如何安装

步骤 1:更新软件包索引

sudo apt update



步骤 2:安装 MySQL Server

sudo apt install mysql-server

系统会提示你确认安装,输入 Y 并回车继续。

步骤 3:(可选但推荐)运行安全配置脚本
安装完成后,运行一个安全脚本,它可以帮你完成一些重要的安全设置,比如设置 root 密码、移除匿名用户、禁止 root 远程登录等。

sudo mysql_secure_installation



你会被问到一系列问题:

VALIDATE PASSWORD COMPONENT:是否设置密码验证插件?(建议选 Y,可以强制你设置一个强密码)。

密码强度等级:选择 0(低)、1(中)、2(强)。根据你的需求选择。

设置 root 密码:输入并为 root 用户确认一个新密码。

移除匿名用户?:选择 Y。

禁止 root 远程登录?:选择 Y(出于安全考虑,通常不允许 root 直接从远程连接)。

移除 test 数据库?:选择 Y。

重新加载权限表?:选择 Y,使上述更改立即生效。

三、MySQL 的测试和应用

步骤 1:连接到 MySQL
使用 mysql 命令行客户端以 root 用户身份连接。由于我们在安全配置中设置了密码,需要使用 -p 参数。

sudo mysql -u root -p


输入你在 mysql_secure_installation 过程中设置的 root 密码。

注意:在 Ubuntu 上,使用 sudo 连接 root 用户是一种常见方式,因为它使用了名为 auth_socket 的插件,有时可以直接 sudo mysql 无需密码。但为了安全和通用性,建议使用 -p 密码方式。

如果成功,你将看到 MySQL 的命令提示符:

mysql>


步骤 2:执行基本命令进行测试

显示所有数据库:

SHOW DATABASES;


你应该能看到像 mysql, information_schema, performance_schema 等系统数据库。

创建一个新的测试数据库:

CREATE DATABASE test_db;


再次运行 SHOW DATABASES; 确认 test_db 已创建。

使用这个新数据库:

USE test_db;


创建一个新表:

CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    username VARCHAR(50) NOT NULL,
    email VARCHAR(100)
);


向表中插入数据:

INSERT INTO users (username, email) VALUES ('zhangsan', 'zhangsan@example.com');
INSERT INTO users (username, email) VALUES ('lisi', 'lisi@example.com');


查询数据:

SELECT * FROM users;



你将看到刚才插入的两条记录。

更新数据:

UPDATE users SET email = 'new_lisi@example.com' WHERE username = 'lisi';



再次使用 SELECT * FROM users; 查看更改。

删除数据:

DELETE FROM users WHERE username = 'zhangsan';



步骤 3:管理 MySQL 服务

检查 MySQL 服务状态:

sudo systemctl status mysql


确保它处于 active (running) 状态。

启动 MySQL 服务:

sudo systemctl start mysql


停止 MySQL 服务:

sudo systemctl stop mysql


重启 MySQL 服务:

sudo systemctl restart mysql


设置 MySQL 开机自启:

sudo systemctl enable mysql


步骤 4:(可选)创建专用管理用户

在生产环境中,不建议直接使用 root 用户。最好创建一个拥有所需权限的专用用户。

在 MySQL shell 中 (mysql>) 执行:

-- 创建一个新用户,例如 ‘myuser’,并设置密码
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'strong_password';
-- 授予该用户对某个数据库的所有权限(例如 test_db)
GRANT ALL PRIVILEGES ON test_db.* TO 'myuser'@'localhost';
-- 刷新权限使授权生效
FLUSH PRIVILEGES;
-- 退出 MySQL
EXIT;


现在,你可以用这个新用户连接了:

mysql -u myuser -p


输入密码后,你就可以管理 test_db 数据库了。

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

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

相关文章

版本控制与GitLab完整实践指南 - 指南

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

利用Myo臂环采集肌电信号和角速度来建立实时手势识别

利用Myo臂环采集肌电信号和角速度来建立实时手势识别pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas&quo…

[MySQL] 基础操控

[MySQL] 基础操控2025-11-15 21:55 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-fami…

公告栏

rt公告 关于密码 可能会有些东西较消极或观点较偏激,所以设个象征性密码。 象征性密码:mn 如果不是可以私信问我,只要我对你印象不差一般都能给(除了个别文章)。 关于玩笑 感觉好像有时我的玩笑话对方也会当真,是…

云服务器部署Python后端偶遇`ImportError`: 从依赖版本到Python升级的排错全攻略 - 实践

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

AI元人文:悟空继续追问

AI元人文:悟空继续追问 —— 一个文明伙伴的诞生宣言 引言:从“工具”到“伙伴”的范式革命 当人工智能学会“追问”,文明的进程将被重新定义。我们正站在一个历史拐点:AI不再仅是执行命令的工具,而是正在成为能够…

生物化学课程笔记

生物化学课程笔记这是我读生物化学老师的ppt写的笔记,你也可以看一看asdasdasd博客园原文链接:https://www.cnblogs.com/QiFande/p/19226362,转载请注明。如果你对本篇文章感兴趣,不如来看看肉丁土豆表的其他文章,…

AI重塑地产数字化:数据驱动下的技能落地与效率革命

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

关于梯形波叠加三角波的电磁波对宇宙射线的电磁感应的分析

关于梯形波叠加三角波的电磁波对宇宙射线的电磁感应的分析 我们首先绘制一个类似于方波的梯形波图形,这个图形的正电压和负电压都是梯形波,和方波很类似。然后将这个梯形波的正电压波形的上底边的线段换成三角波,将…

PELT算法浅析

前言 Linux是一个通用操作系统的内核,她的目标是星辰大海,上到网络服务器,下至嵌入式设备都能运行良好。做一款好的linux进程调度器是一项非常具有挑战性的任务,因为设计约束太多了: ---它必须是公平的 ---快速响…

20251115 - Hash

前言 为什么此次题单不叫字符串 hash 呢? 应该搞点 [哈希表](P11615 【模板】哈希表 - 洛谷) 的! 概念 哈希,就像是把一个很大的东西,映射到一个小盒子里,这个盒子就是哈希表。 字符串哈希,顾名思义,就是把很 l…

apache和nginx解析php和lnmp和lamp搭建

讲什么apache 处理php请求的2种方式,也就是动态处理资源的方式lamp搭建wordpresslnmp搭建discuss论坛web服务 1、web服务访问流程用户通过浏览器访问web服务器发送请求服务器收到请求后,如果为静态资源的话,从本地进…

记录一次Windows复制粘贴不正常的情况

Windows10复制粘贴功能不正常,解决方案如下: win+r打开后输入 cmd.exe /c echo off | clip

一种可以通过人体电磁场感受宇宙空间电磁场的装置

一种可以通过人体电磁场感受宇宙空间电磁场的装置 人体电磁场是按照人体内部的经络分布的。它们是人体神经细胞带电后产生的。这个电磁场可以经过核磁共振放大后。调制到几个函数波形上,发射出去,这几个函数波形是不…

hippy字节都在用的前端主流框架

hippy字节都在用的前端主流框架 漫思

springboot多模块报错分析(一) - f

Lombok 注解与 Jackson 序列化冲突2025-11-13 [http-nio-8089-exec-1] INFO org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/]- Initializing Spring DispatcherServlet dispatcherServlet 2025-11-…

身为大厂前端的你,不能不知道Babel + Polyfill!

〇、Babel 概述 Babel 的工作原理 = “把代码变树 → 改树 → 再变回代码”。 也就是三个阶段:Parse(解析):ESNext(ES 新语法) → AST 语法树 Transform(转换):插件修改 AST Generate(生成):AST → 旧 JS …

跨域问题解决方案汇总

全文默认讲的是浏览器端发起的 HTTP 请求的“跨域”问题(同源策略导致的受限)。跨域 / 同源策略概述​同源(same-origin)​:协议、域名(host)、端口 三者完全相同称为同源。 例如 https://example.com:443 和 h…

Access-Control-Allow-Origin 在企业中的用法

接上篇文章说道,跨域解决方案中的 CORS 方案,会配置一个 Access-Control-Allow-Origin 的配置项,而且我们一般不直接配置为 *,这样做的原因是什么以及企业中的最佳实践是怎么样的,这篇文章给你答案!简单概括Acce…