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

数据库第一章:库的操作

 一、铺垫

1.mysql是数据库服务的客户端;

2.mysqld是数据库服务的服务端;

3.mysql本质:是基于CS模式的一种网络服务;

4.数据库的本质:对数据内容存储的一套解决方案,你给我字段或要求,我直接给你结果就行;

5.Linux下的建立数据库,本质就是在LInux下建立一个目录

6.在数据库内创建表,本质就是在Linux下创建对应的文件即可;

7.创建数据库时,有两个编码集:1.数据库编码集——数据库未来存储数据用的编码;2.数据库校验集——支持数据库,进行字段比较使用的编码;本质上也是一种读取数据库中数据的采用的编码格式;

8.综上数据库无论对数据任何操作,都必须保证操作和编码必须是编码一致的

二、命令

1.登录mysql;

 mysql -h 127.0.0.1 -P 3306 -u root -p

-h        代表需要连接的IP地址

-P        代表需要链接的端口号

-u        代表需要登陆的用户名

-p        指明需要输入密码

 mysql -u root -p        //一般使用这条语句登陆mysql

2.创建数据库 

 create database helloworld;        //建立数据库helloworld

3.删除数据库 

 drop database helloworld;        //删除数据库helloworld

 本质就是Linux下删除一个目录;执行删除动作后,数据库文件夹,级联都会被删除,里面所有的数据都会被删除;不要随意删除数据库;

 4.查看数据库

 show databases;        //使用这条语句,来查看已存在的数据库文件

cd /var/lib/mysql        //同时可以进入mysql数据库查看命名相同的文件

 本质就是在Linux下 root/var/lib/mysql下创建一个目录;

5.使用并打开数据库

use helloworld;        //打开数据库helloworld;进入数据库

                                //也可以在helloworld数据库中,使用这条语句,跳到其他数据库中;

 mysql数据库的行为,和Linux文件系统的操作行为是完全对的上的;

5.1当处于数据库中,想知道自己处于哪个数据库里

select database();        //查看自己处于哪个数据库文件中;

 6.改变数据库某些属性

alter database helloworld charset=gbk collate gbk_chinese_ci;

                //只能改变数据库的编码集,校验集

show create database helloworld;        //显示创建数据库helloworld的属性;

7.备份和恢复数据库

mysqldump -P3306 -uroot -p 密码 -B helloworld(数据库名) > helloworld.sql(数据库备份路径+文件名)        //备份        

//此操作是在Linux,shell语句中跑的;

 打开helloworld.sql文件,可以看到里面是以前操作mysql数据库的语句,都备份起来了;

source /home/qk/(路径名+要恢复的文件名);        //在mysql中使用此语句,恢复数据库文件

 //恢复的时候,他会把曾经操作过的语句都再一次跑一遍;

mysqldump -u root -p 密码 -B 数据库名1 数据库名2 > 数据库存放路径        //备份多个数据库  

 mysqldump -u root -p 密码 数据库名 表名1 表名2 > 数据库存放路径        //备份其中一张表

如果备份一个数据库时,没有带-B参数,在恢复数据库时,需要先创建空数据库,然后使用数据库,在使用source还原;

8.查看数据库被谁使用

show processlist;        //查看数据库正在被谁使用;

9.编码集

9.1查看系统默认字符集以及校验规则

show variables like 'character_set_database';        //查看数据库编码集

show variables like 'collation_database';                //查看数据库校验集

9.2查看数据库支持的字符集

  show charset;

 9.3查看数据库支持的字符集校验规则

show collation;

mysql数据库编码校验规则;采用了就近原则;因为我们在配置文件中已经写了采用哪种编码格式,哪种校验格式;如果在sql语句中有体现的话那就采用语句中的标准,如果没有体现,就采用配置文件中的标准;

9.4创建数据库指明编码集

create database d1 charset=utf8;        //创建数据库d1,并指明使用utf8编码;

create database d1 character set utf8;        //第二种方法;

create database d1 charset=utf8 collate utf8_general_ci;        创建数据库d1,并指明使用utf8编码;使用utf8_general_ci校验集;

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • linux-IO-进程-线程(相关函数)
  • Apache POI用法
  • 云原生应用——软件的未来
  • JVM-内存区域
  • 打造古风炫酷个人网页:用HTML和CSS3传递笔墨韵味
  • 基于Ubuntu+PostgreSQL+Zip搭建SonarQube环境
  • linux的文本编辑器vim常用操作命令介绍
  • 西门子S7协议(PROFINET端口)转罗克韦尔AB的Ethernet/IP网络通讯
  • ubuntu16.04下qt5.7.1添加对openssl的支持
  • C# 手动写入日志,过大写入新文件
  • 走进低代码表单开发(三):高效业务功能构建
  • 构建高效入学审核系统:Spring Boot解决方案
  • 【经验技巧】瞬态信号仿真中的码型选择问题
  • Windows桌面整理软件哪个最好?值得一试的Top10桌面管理软件汇总(全新)
  • 斯坦福研究人员探讨大型语言模型在社交网络生成中的应用及其在政治同质性上的偏见
  • Android框架之Volley
  • Angular 响应式表单之下拉框
  • canvas 高仿 Apple Watch 表盘
  • IDEA常用插件整理
  • JavaScript-Array类型
  • Java深入 - 深入理解Java集合
  • LeetCode29.两数相除 JavaScript
  • orm2 中文文档 3.1 模型属性
  • sublime配置文件
  • 后端_ThinkPHP5
  • 基于 Ueditor 的现代化编辑器 Neditor 1.5.4 发布
  • 力扣(LeetCode)22
  • 前端代码风格自动化系列(二)之Commitlint
  • 浅析微信支付:申请退款、退款回调接口、查询退款
  • 如何在 Tornado 中实现 Middleware
  • 线上 python http server profile 实践
  • 小程序测试方案初探
  • 一道面试题引发的“血案”
  • 译有关态射的一切
  • 新年再起“裁员潮”,“钢铁侠”马斯克要一举裁掉SpaceX 600余名员工 ...
  • ​​快速排序(四)——挖坑法,前后指针法与非递归
  • ​Z时代时尚SUV新宠:起亚赛图斯值不值得年轻人买?
  • #Spring-boot高级
  • (八)c52学习之旅-中断实验
  • (附源码)springboot猪场管理系统 毕业设计 160901
  • (九十四)函数和二维数组
  • (十六)视图变换 正交投影 透视投影
  • (十一)JAVA springboot ssm b2b2c多用户商城系统源码:服务网关Zuul高级篇
  • (四)js前端开发中设计模式之工厂方法模式
  • (原创)攻击方式学习之(4) - 拒绝服务(DOS/DDOS/DRDOS)
  • . Flume面试题
  • .NET Core WebAPI中使用Log4net 日志级别分类并记录到数据库
  • .NET(C#) Internals: as a developer, .net framework in my eyes
  • .netcore如何运行环境安装到Linux服务器
  • .Net的DataSet直接与SQL2005交互
  • .NET简谈设计模式之(单件模式)
  • .net中应用SQL缓存(实例使用)
  • /usr/bin/env: node: No such file or directory
  • [ C++ ] STL---stack与queue
  • [ Socket学习 ] 第一章:网络基础知识