MySQL数据库笔记整理1

1、数据库的登录及退出

root@server \~# systemctl start mysqld

必须先启动服务否则报错,如下所述报错信息:

root@server \~# mysql -u root -p

Enter password:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

登陆格式

mysql -u 用户名 -h 服务器的主机地址 -p密码

2、查看数据库

代码格式:

sql 复制代码
mysql> show databases  [like  条件];    
+--------------------+
| Database           
|
+--------------------+
| information_schema |
| mysql              
|
| performance_schema |
| sys                
# 注意有s
|
+--------------------+
4 rows in set (0.00 sec)
  • MySQL自带数据库

    • Information_schema: 主要存储了系统中的一些数据库对象信息,如:用户表信息、列信息、权限信息、字符集信息、分区信息等。(数据字典表)

    • performance_schema:主要存储数据库服务器的性能参数

    • mysql: 存储了系统的用户权限信息及帮助信息

    • sys: 5.7新增,之前版本需要手工导入。这个库是通过视图的形式把information_schema 和performance_schema结合起来,查询出更加令人容易理解的数据

使用条件查询:

sql 复制代码
mysql> show databases  like  'sys';
+----------------+
| Database (sys) |
+----------------+
| sys            |
+----------------+
1 row in set (0.00 sec)
  • 带有通配符的条件

    • %:匹配任意零个或多个字符

    • _ :匹配任意单个字符

sql 复制代码
mysql> show databases  like  's%';
+---------------+
| Database (s%) |
+---------------+
| sys           |
+---------------+
1 row in set (0.00 sec)

mysql> show databases like '__sql';
+------------------+
| Database (__sql) |
+------------------+
| mysql            |
+------------------+
  • 查看数据库当前时间
sql 复制代码
mysql> select now();
+---------------------+
| now()               |
+---------------------+
| 2023-02-10 09:39:14 |
+---------------------+
1 row in set (0.00 sec)
  • 显示数据库版本
sql 复制代码
mysql> select version();
+-----------+
| version() |
+-----------+
| 8.0.37    |
+-----------+
1 row in set (0.00 sec)
  • 查看当前登录的用户及主机名
sql 复制代码
mysql> select user();
+----------------+
| user()         |
+----------------+
| root@localhost |
+----------------+

3、创建数据库

  • 格式:
sql 复制代码
create  database  数据库名
  • 查看创建数据库的语句

  • 格式:

    sql 复制代码
    show  create database 数据库名

示例:

sql 复制代码
mysql> show create database testdb \G
*************************** 1. row ***************************
       Database: testdb
Create Database: CREATE DATABASE `testdb` /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci */ /*!80016 DEFAULT ENCRYPTION='N' */


# 分析:
# 上述显示创建数据库语句的内容可看做3段内容
	# CREATE DATABASE `testdb` :表示创建数据库testdb
	# /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci */ :表示注释内容,显示字符集采用utf8mb4方案,一个字符需要 1 ~ 4 个字节。可以存储一些 emoji 表情; utf8mb4_0900_ai_ci表示字符比较规则即ai为不区分重音,ci为不区分大小写
	# /*!80016 DEFAULT ENCRYPTION='N' */ 表示数据库未加密

4、切换数据库

  • 查看当前使用的数据库

  • 格式:

sql 复制代码
select  database();
  • 选择数据库

  • 格式:

sql 复制代码
use  数据库名

5、删除数据库

  • 格式:
sql 复制代码
drop database 数据库名

6、小结

sql 复制代码
# 新建数据库
create database 数据库名;

# 设为当前数据库
use  数据库名;

# 查看当前使用的数据库
select  database();

# 显示所有数据库
show  databases;

# 删除数据库
drop database 数据库名;
相关推荐
李兆龙的博客1 小时前
从一到无穷大 #104:面向 SSD 的数据库写入设计——从 FTL 到应用协同
数据库·ssd·存储引擎
千桐科技2 小时前
qData 数据中台开源版 v1.6.4 发布:聚焦使用反馈,功能细节与产品体验持续优化
数据库·开源·qdata
运维踩坑日记2 小时前
OpenStack 核心服务实战笔记
linux·运维·服务器·笔记·openstack
且撷相思红豆枝2 小时前
Simulink学习笔记(一)
笔记·学习·matlab
浪潮BB机2 小时前
2026考研网课录音转复习笔记工具实测横评
笔记·语音识别·效率工具·ai工具·录音转写·会议纪要
滴啦嘟啦哒2 小时前
【具身笔记】【Piper+PI0.5】三、探究失败原因
笔记·python·vla·具身
惊讶的猫2 小时前
慢查询和排查方式(查询日志 + 分析工具 + EXPLAIN)
mysql·1024程序员节
fox06332 小时前
预约类平台的责任边界建模:从一个证件办理预约平台的流程设计说起
大数据·数据库·搜索引擎·全文检索·生活
John_Hui2 小时前
MySQL基础知识
数据库·sql·mysql·1024程序员节