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

Mysql系列--1、库的相关操作

目录

一、前言

二、创建数据库

三、字符集和校验(编码)

        3.1查看系统默认的字符集和校验集

        3.2查看所有字符集和校验集

        3.3指定编码创建数据库        

        3.4校验规则对数据库的影响

四、操作数据库

        4.1查看数据库        

        4.2显示创建语句

        4.3修改数据库

        4.4删除数据库

         4.5备份和恢复

五、补充


一、前言

        前文我们初步认识了Mysql和数据库,今天我们了解如何在在终端上操作数据库。

二、创建数据库

create database [if not exits] DB_NAME
[]为可选项,保证安全性,可不写
大写为自定义库名

从Linux角度理解创建数据库:

        创建数据库相当于在/var/lib/mysql目录下创建新的目录

三、字符集和校验(编码)

        创建数据库有两个编码集:
        (1)数据库编码集 :用于未来存储数据

        (2)数据库校验集 : 数据库进行字段比较使用的编码,本质上是读取数据采用的编码格式

        数据库的任何操作都必须保证操作和编码一致

        3.1查看系统默认的字符集和校验集

show variables like 'character_set_database';
//编码
show variables like 'collation_database';
//校验

     

        3.2查看所有字符集和校验集

show charset;
show collation;

        3.3指定编码创建数据库        

create database DB_NAME charset=utf8 collate utf8_general_ci;
create database DB_NAME character set utf8 collate utf8_general_ci;
//字符集 + 校验集

        3.4校验规则对数据库的影响

utf8_general_ci:不区分大小写

utf8_bin:区分大小写

mysql> create database d1 character set utf8 collate utf8_general_ci;mysql> create database d2 character set utf8 collate utf8_bin;
//校验为utf8_general_ci
mysql> use d1;
mysql> create table t1(letter varchar(20));mysql> insert into t1 values('a');
mysql> insert into t1 values('A');
mysql> insert into t1 values('b');
mysql> insert into t1 values('B');mysql> select * from t1 where letter='a';

//校验为utf8_bin
mysql> use d2;
mysql> create table t2(letter varchar(20));mysql> insert into t1 values('a');
mysql> insert into t1 values('A');
mysql> insert into t1 values('b');
mysql> insert into t1 values('B');mysql> select * from t2 where letter='a';

四、操作数据库

        4.1查看数据库        

show databases;

   

        4.2显示创建语句

show create database 数据库名;

        4.3修改数据库

alter database 库名 [alter_spacification [,alter_spacification]...];
//alter_spacification:
//[DEFAULT] CHARACTER SET charset_name
//[DEFAULT] COLLATE collation_name

//修改库的编码格式
alter database d1 charset=gbk;

        4.4删除数据库

drop database DB_NAME;

         由于数据库过于底层,所以千万不要随意删除数据库和修改数据库,否则前端可能都要全部修改!!!

         4.5备份和恢复

//备份
mysqldump -p port -u root -P -B [DB_NAME1 DB_NAME2 ...] > 存储路径
//恢复
mysql > source 存储路径

五、补充

确认自己在哪个库

select database();

查看哪些人在使用数据库

show processlist;

http://www.dtcms.com/a/283137.html

相关文章:

  • Mybatis-2快速入门
  • @Binds/@IntoMap/@ClassKey的使用
  • C++ shared_ptr 底层实现分析
  • uniapp+vue3+鸿蒙系统的开发
  • WD5018 同步整流降压转换器核心特性与应用,电压12V降5V,2A电流输出
  • MySQL学习——面试版
  • ssl相关命令生成证书
  • LangChain面试内容整理-知识点21:LangSmith 调试与监控平台
  • 职业发展:把工作“玩”成一场“自我升级”的游戏
  • 如何解决pip安装报错ModuleNotFoundError: No module named ‘tkinter’问题
  • webpack相关
  • 基于Matlab的四旋翼无人机动力学PID控制仿真
  • 第五届计算机科学与区块链国际学术会议(CCSB 2025)
  • 大模型训练框架对比
  • CTFMisc之隐写基础学习
  • 重学前端007 --- CSS 排版
  • day22 力扣77.组合 力扣216.组合总和III 力扣17.电话号码的字母组合
  • 异常流程进阶 —— 进出异常时的压栈与出栈
  • LVS集群搭建
  • 【Excel】使用vlookup函数快速找出两列数据的差异项
  • 零基础学Vue3组件化开发
  • 使用Python清理Excel中的空行和单元格内部空行:初学者指南
  • Excel处理控件Aspose.Cells教程:使用 Python 在 Excel 中创建甘特图
  • EP02:【NLP 第二弹】自然语言处理数据
  • Oracle 大页配置use_large_pages 参数解析
  • Antd中使用Table集成 react-resizable实现可伸缩列
  • 高性能上位机界面设计范式:C#与C++/C开发调试无缝衔接
  • AR智能巡检:电力运维的数字化变革
  • Raydium CLMM 协议
  • Kotlin比较接口