MySQL数据库入门

1、MySQL概述

MySQL官方网站
https://www.mysql.com/downloads/

MySQL被Oracle公司收购了,作者又重新编写了一个开源的数据库管理系统,Mariadb
在这里插入图片描述
在这里插入图片描述
2、MySQL产品&版本
在这里插入图片描述

2、数据库在网站架构中的角色

LAMP
LNMP网站架构
在这里插入图片描述

3、安装MySQL-基于yum

查看MySQL信息

查询mysql相关的软件包信息
在这里插入图片描述
查询mysql-server的软件信息
在这里插入图片描述
2、安装mysql-server
[root@candy-nginx202 ~]# yum install mysql-server -y
在这里插入图片描述
3、查询mysql-server是否安装成功
[root@candy-nginx202 ~]# rpm -q mysql-server

在这里插入图片描述
[root@candy-nginx202 ~]# rpm --help |grep ‘-q’
在这里插入图片描述
检查防火墙是否关闭
sestatus
在这里插入图片描述
systemctl status firewalld
在这里插入图片描述
iptables -vnL
在这里插入图片描述
4、启动MySQL,查看进程数量

[root@candy-nginx202 ~]# systemctl start mysqld
[root@candy-nginx202 ~]# ps axu | grep mysqld
在这里插入图片描述
[root@candy-nginx202 ~]# ps -efL | grep mysqld
在这里插入图片描述
[root@candy-nginx202 ~]# ps -efL | grep -c mysqld
在这里插入图片描述

5、登录数据库系统

输入mysql指令即可登录MySQL数据库
在这里插入图片描述
6、查询mysql库的user表的user、host、authentication_string字段的数据库信息

[root@candy-nginx202 ~]# mysql
在这里插入图片描述
mysql> select user,host,authentication_string from mysql.user;
在这里插入图片描述
在这里插入图片描述

4、MySQL数据库常用指令

MySQL数据库常用命令涵盖了一系列操作,包括但不限于数据库的创建与管理、数据表的操作、数据的增删改查、用户权限管理以及服务器的维护等。以下是一些基础且常用的MySQL命令示例:
mysql -u 用户名 -p
输入命令后,系统会提示输入密码。、
在MySQL命令行界面输入:
quit 或 exit

2、显示所有数据库

SHOW DATABASES;
在这里插入图片描述

3、创建数据库

CREATE DATABASE 数据库名;
在这里插入图片描述

4、删除数据库

DROP DATABASE 数据库名;
在这里插入图片描述

5、使用指定数据库

USE 数据库名;
在这里插入图片描述

6、显示当前数据库中的所有表

SHOW TABLES;
在这里插入图片描述

7、创建表

CREATE TABLE 表名 (
列1 数据类型,
列2 数据类型,

列n 数据类型,
PRIMARY KEY (主键列名)
);
在这里插入图片描述

8、删除表

DROP TABLE 表名;
在这里插入图片描述

9、插入数据

INSERT INTO 表名 (列1, 列2, …, 列n)
VALUES (值1, 值2, …, 值n);
在这里插入图片描述

10、查询数据

SELECT 列1, 列2, …, 列n
FROM 表名
WHERE 条件;
筛选大于等于20岁的学生
在这里插入图片描述

11、更新数据

UPDATE 表名
SET 列1 = 新值1, 列2 = 新值2, …, 列n = 新值n
WHERE 条件;
将年龄22岁的学生修改名字和邮箱
在这里插入图片描述

12、删除数据

DELETE FROM 表名
WHERE 条件;
删除年龄为22岁的所有学生记录
在这里插入图片描述

13、创建索引

CREATE INDEX 索引名
ON 表名 (列名);
在这里插入图片描述
可以创建多个复合索引
在这里插入图片描述
您还可以为多个列创建复合索引,以便基于这些列的组合来加速查询
在这里插入图片描述

14、删除索引

DROP INDEX 索引名
ON 表名;
在这里插入图片描述
在这里插入图片描述
15、显示表结构
DESCRIBE 表名;
在这里插入图片描述
在这里插入图片描述
Field 列显示了列名。
Type 列显示了列的数据类型。
Null 列显示了该列是否允许NULL值。
Key 列显示了该列是否被索引(PRI表示主键,UNI表示唯一索引,MUL表示非唯一索引)。
Default 列显示了列的默认值(如果有的话)。
Extra 列提供了额外的信息,如 auto_increment 表示该列是自动递增的,CURRENT_TIMESTAMP 表示该列在插入新记录时会自动设置为当前时间戳。

16、显示存储过程

SHOW PROCEDURE STATUS;

17、创建存储过程

DELIMITER //
CREATE PROCEDURE 存储过程名()
BEGIN
– 存储过程体
END //
DELIMITER ;

DELIMITER 关键字被用来改变命令分隔符,以便在存储过程体内部可以包含多个分号(;),而不会被MySQL解释器错误地解释为命令的结束。

在这里插入图片描述

18、调用存储过程

CALL 存储过程名();
在这里插入图片描述

19、显示存储过程的定义

SHOW CREATE PROCEDURE 存储过程名;

20、删除存储过程

DROP PROCEDURE 存储过程名;
这些命令仅涵盖了MySQL数据库的基本操作。实际应用中,您可能还需要使用更高级的SQL语句和功能。建议查阅MySQL官方文档以获取更多详细信息和示例。

创建用户并授权

创建一个用户newuser,并授予所有权限:

 grant all privileges on *.* to 'newuser'@'%' identified by 'password';

试图为新用户newuser授予所有权限,并允许该用户从任何主机(% 表示所有主机)连接到MySQL服务器,同时设置密码为password。
在这里插入图片描述
授予所有用户权限:
在这里插入图片描述
修改用户密码
修改newuser的密码:

  alter user 'newuser'@'%' identified by 'newpassword';

修改用户 newuser(从任何主机 % 连接)的密码为 newpassword
在这里插入图片描述
回收权限
回收newuser的所有权限:

  revoke all privileges, grant option from 'newuser'@'%';

先撤销所有全局权限,然后删除用户,再重新创建用户(如果需要的话),因为直接撤销所有权限可能比较复杂。
在这里插入图片描述
my.cnf配置文件
[root@candy-nginx202 binlog]# cat /etc/my.cnf

[client]
# 设置客户端字符集
default-character-set=utf8mb4

[mysql]
# 设置mysql客户端连接默认字符集
default-character-set=utf8mb4

[mysqld]
# 设置服务器端字符集和校验规则
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci

# 开启独立表空间
innodb_file_per_table=1

# 开启二进制日志,并设置路径
server-id=1 # 必须设置,用于GTID和主从复制
log_bin=/var/lib/mysql/binlog/mysql-bin.log # 替换为实际的日志存放路径
binlog_format=ROW # 使用ROW格式,支持GTID

# 开启GTID
gtid_mode=ON
enforce_gtid_consistency=true
# 如果是新部署的MySQL实例,可以不需要下面这行。如果是已有实例迁移到GTID,则需要执行全备恢复后加上
# init_sql='SET @@GLOBAL.GTID_PURGED="uuid:1-1";' # 替换uuid和序号为你自己的GTID

# 可能还需要调整其他与GTID相关的设置,如auto_position等,具体根据实际情况和需求来定

5.4、查看数据目录大小
[root@candy-nginx202 ~]# cd /var/lib/mysql
[root@candy-nginx202 mysql]# du -sh /var/lib/mysql/candy
2.8G /var/lib/mysql/candy
[root@candy-nginx202 mysql]# du -sh /var/lib/mysql/binlog
4.3G /var/lib/mysql/binlog

5.5、查看服务器硬件配置
grep -c processor /proc/cpuinfo
在这里插入图片描述
free -g
在这里插入图片描述
fdisk -l | grep [sh]d
在这里插入图片描述
还应该使用其他命令,查看服务器的具体硬件信息,比如服务器型号,CPU核心,RAID配置,内存配置等。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【网络编程】套接字的多种可选项

可以看出&#xff0c;套接字可选项是分层的。IPPROTOIP层可选项是IP协议相关事项IPPROTO TCP层可选项是TCP协议相关的事项&#xff0c;SOLSOCKET层是套接字相关的通用可选项 getsockopt&&setsockopt #include <sys/socket.h> int getsockopt(int sock, int lev…

IO流..

1.IO流-->用于读写文件中的数据 2.IO流的分类 import java.io.FileOutputStream; import java.io.IOException;public class Stream {public static void main(String[] args) throws IOException{FileOutputStream fosnew FileOutputStream("abc\\a.txt");fos.w…

docker容器中连接宿主机mysql数据库

最近要在docker中使用mysql数据库&#xff0c;首先考虑在ubuntu的镜像中安装mysql&#xff0c;这样的脚本和数据库都在容器中&#xff0c;直接访问localhost&#xff1a;3306&#xff0c;脚本很简单&#xff0c;如下&#xff1a; import pymysql# 建立数据库连接 db pymysql.…

了解Nest.js

一直做前端开发&#xff0c;都会有成为全栈工程师的想法&#xff0c;而 Nest 就是一个很好的途径&#xff0c;它是 Node 最流行的企业级开发框架&#xff0c;提供了 IOC、AOP、微服务等架构特性。接下来就让我们一起来学习Nest.js Nest.js官网地址 一&#xff0c;了解Nest Cli …

虚拟机怎么额外搭建两个Redis节点,配置多个 Redis 实例

前提条件 在开始之前&#xff0c;请确保你已经具备以下条件&#xff1a; 一台已安装 Redis 的虚拟机。虚拟机上已安装基本的 Linux 工具&#xff08;例如 FinalShell&#xff09;。 步骤二&#xff1a;配置额外的 Redis 实例 接下来&#xff0c;我们将配置两个新的 Redis 实…

Java——可变参数

一、可变参数 1、介绍 Java的可变参数&#xff08;Varargs&#xff09;是一种语法特性&#xff0c;允许一个方法接受不定数量的参数。可变参数的使用通过在参数类型后面添加省略号&#xff08;...&#xff09;实现。这使得方法在调用时可以传入不同数量的参数&#xff0c;而不…

Datakit管理openGauss6.0集群,监控运维超方便

作者&#xff1a;IT邦德 中国DBA联盟(ACDU)成员&#xff0c;10余年DBA工作经验&#xff0c; Oracle、PostgreSQL ACE CSDN博客专家及B站知名UP主&#xff0c;全网粉丝10万 擅长主流Oracle、MySQL、PG、高斯及Greenplum备份恢复&#xff0c; 安装迁移&#xff0c;性能优化、故障…

Java开发的构建神器:Maven以及如何安装部署Maven

目录 一、Maven引言1.1 Maven的核心概念✍. POM (Project Object Model)✌. 依赖管理✍. 生命周期与构建阶段✌. 插件系统 1.2 Maven的工作流程✍. 读取POM文件&#xff1a;✌. 依赖解析&#xff1a;✍. 构建生命周期&#xff1a;✌. 插件执行&#xff1a;✍. 构建输出&#xf…

物联网技术-第4章物联网通信技术-4.1无线网络

目录 1. 无线通信概念 &#xff08;1&#xff09;有线与无线 &#xff08;2&#xff09;电磁波的频谱 &#xff08;3&#xff09;频段的划分 &#xff08;4&#xff09;调制与解调 &#xff08;5&#xff09;调制技术 &#xff08;6&#xff09;信道的复用 &#xff08;…

#QT(QCharts绘制曲线)

1.IDE&#xff1a;QTCreator 2.实验&#xff1a;绘制曲线图表 3.记录&#xff1a; 4.代码 pro QT core gui #加入以下代码引入charts QT charts greaterThan(QT_MAJOR_VERSION, 4): QT widgetsCONFIG c17# You can make your code fail to compile if it uses depre…

“Git之道:掌握常用命令,轻松管理代码“

目录 1. 初始化和配置 2. 提交和更新 3. 分支和合并 4. 查看和比较 5. 远程仓库 6. 文件操作命令 1. 初始化和配置 git init&#xff1a;在当前目录初始化一个新的Git仓库git config&#xff1a;配置Git的全局或局部选项git clone&#xff1a;从远程仓库克隆一个本地副本…

全网最全 Kimi 使用手册,看完 Kimi 效率提升 80%

在当前AI文字大模型领域&#xff0c;ChatGPT4.0无疑是最强大。然而&#xff0c;最近最火爆的大模型非国产Kimi莫属。 相较于其它大模型&#xff0c;Kimi 最大的优势在于&#xff0c;超长文本输入&#xff0c;支持200万汉字&#xff0c;是全球范围内罕见的超长文本处理工具&…

数据结构与算法-字符出现的次数

问题描述 以下是这个找出字符串中字符串出现频率最多的字符。大家可以自行研究一下&#xff0c;题目不难&#xff0c;我今天尝试使用C语言来完成解答&#xff0c;但是在解答过程居然出现了一个意想不到的问题。可能是高级语言用多了&#xff0c;C语言某些函数的限制和风险忘记管…

携手精益生产培训机构,让职业发展更上一层楼!——张驰咨询

精益生产培训机构在职业发展中的关键作用不容忽视。对于许多初入职场或希望深化精益生产理解的从业者来说&#xff0c;这些机构如同一盏明灯&#xff0c;照亮了前行的道路。 首先&#xff0c;精益生产培训机构是知识的集中地。它们不仅提供了全面的理论框架&#xff0c;还涵盖了…

数据可视化实验三:Matplotlib绘图

目录 一、绘制斜率为3和5的直线图 1.1 代码实现 1.2 绘制结果 二、使用Matplotlib绘制招聘职位数量关系的线图&#xff0c;通过Pandas读取数据绘制折线图 2.1 代码实现 2.2 绘制结果 三、使用Matplotlib绘制房价与房屋面积的散点图&#xff0c;数据通过Pandas读取表格 3…

Linux中DNS搭建

文章目录 一、DNS介绍1.1、DNS是什么1.2、DNS的工作原理1.3、DNS的域名结构 二、Bind介绍2.1、bind概述2.2、bind主要配置文件 三、DNS安装四、主要配置文件解析&#xff08;除/etc/named.conf&#xff09;4.1、/etc/named.rfc1912.zones4.2、/etc/rc.d/init.d/named4.3、/etc/…

上海AI Lab推出8B模型,奥数成绩媲美GPT-4

只用1/200的参数&#xff0c;就能让大模型拥有和GPT-4一样的数学能力&#xff1f; 复旦大学和上海AI实验室的研究团队刚刚研发出了一款具有超强数学能力的模型。 这款模型名为MCTSr&#xff0c;以Llama 3为基础&#xff0c;参数量只有8B&#xff0c;却在奥赛级别的题目上取得了…

3.Nginx配置文件基本介绍

nginx配置文件所在路径:/usr/local/nginx/conf/nginx.conf nginx配置文件有三块: 1.全局块 从配置文件开始到events块之间的内容,主要会设置一些影响nginx服务器整体运行的配置指令。 配置运行nginx服务器的用户(组)允许生成的worker process数,Nginx服务器并发处理服务…

现货白银买卖网站靠什么生存?

现货白银交易平台的官网是该企业在互联网上的门面&#xff0c;它向外界展示了平台的形象、文化和价值观。通过官网&#xff0c;投资者可以了解一家现货白银交易平台的发展历程、服务特色等&#xff0c;从而形成对平台的整体印象。 现货白银平台的官网是其发布官方信息、新闻动态…

JVM 性能分析案列——使用 JProfiler 工具分析 dump.hprof 堆内存快照文件排查内存溢出问题

在 windows 环境下实现。 参考文档 一、配置 JVM 参数 配置两个 JVM 参数&#xff1a; -XX:HeapDumpOnOutOfMemoryError&#xff0c;配置这个参数&#xff0c;会在发生内存溢出时 dump 生成内存快照文件&#xff08;xxx.hprof&#xff09;-XX:HeapDumpPathF:\logs&#xff…