当前位置: 首页 > news >正文

开源 Linux 服务器与中间件(七)数据库--MySQL

      文章的目的记录所使用的的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.dtcms.com/a/506633.html

相关文章:

  • 在 JavaScript 中处理 `0.1 + 0.2` 这类精度问题
  • 今天我们学习python编程常用模块与面向对象
  • 网站的三大标签宁波专业seo服务
  • Day6C语言前期阶段练习之汉诺塔问题
  • Apache Spark 集群部署与使用指南
  • 基于3D LiDAR的作物排检,用于在不同种植密度下成熟时的大豆
  • Python使用Medical Information Dataset实战2025.07版(上)
  • 基因组学中的深度学习!
  • 基于容器适配器模式的 Stack 与 Queue 实现:复用底层容器的优雅设计
  • Kafka面试精讲 Day 26:Kafka集群部署与配置
  • 73_基于深度学习的水面漂浮垃圾检测系统(yolo11、yolov8、yolov5+UI界面+Python项目源码+模型+标注好的数据集)
  • 在JavaScript中,清除 Canvas 画布上的内容
  • 方便做简笔画的网站或软件公司人员管理系统
  • SQL之参数类型讲解
  • CTFSHOW—WEB5
  • UU远程深度测评:重构远程控制体验的“无套路”标杆
  • 提升 iOS 26 系统流畅度的实战指南,多工具组合监控
  • vue3:vue3 + elementplus + pinia实现js的XMLHttpRequest 下载功能。
  • 如何在macOS上免密登录阿里云ECS服务器
  • 把“天猫”装进 JVM:Java 关键词商品爬虫从 0 到 1(含完整可运行代码)
  • tar打包过滤指定目录指南
  • 塘厦镇住房规划建设局网站wordpress主题生成
  • 5-SpringCloud-服务链路追踪 Micrometer Tracing
  • 网站怎样做谷歌推广没有网站怎么做淘宝客
  • 【C/C++基本功】union联合体彻底详解
  • 万字 Apache ShardingSphere 完全指南:从分库分表到分布式数据库生态
  • WebPages PHP:深入理解与高效实践
  • 数据结构-滑动窗口三题
  • 做黑网站吗怎么建设营销型网站
  • 免费企业网站程序关注love石家庄公众号微信