开源 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 应用 :它是 LAMPLEMP 技术栈中的 "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 数据库了。

相关推荐
---学无止境---3 小时前
Linux中页表缓存初始化pgtable_cache_init函数的实现
linux
风为你而吹3 小时前
【玩泰山派】8、泰山派安装armbian,玩armbian
linux
qiuiuiu4134 小时前
正点原子RK3568学习日志12-注册字符设备
linux·开发语言·单片机·学习·ubuntu
韩立学长4 小时前
【开题答辩实录分享】以《自然灾害隐患点管理信息系统》为例进行答辩实录分享
数据库·spring boot
迎風吹頭髮4 小时前
Linux服务器编程实践58-getnameinfo函数:通过socket地址获取主机名与服务名
开发语言·数据库·php
一吃就胖的4 小时前
【给服务器安装服务器安装nacos】
java·运维·服务器
小云数据库服务专线4 小时前
GaussDB 应用侧报no pg_hba.conf entry for host处理方法
服务器·网络·gaussdb
christine-rr4 小时前
linux常用命令——其他
linux·服务器·网络·数据库·redis·ubuntu
zhaotiannuo_19984 小时前
虚拟机安装ikuai系统相关配置
运维·服务器·性能优化