MySQL系列:数据库基本操作(1)
1. 登录数据库
mysql -h localhost -u root -p
2. 数据库基本操作
2.1 查看数据库
mysql> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sakila |
| sys |
| world |
+--------------------+
6 rows in set (0.00 sec)
2.2 创建数据库
mysql> CREATE DATABASE db;
mysql> CREATE DATABASE IF NOT EXISTS db;
指定字符集:
mysql> CREATE DATABASE db CHARACTER SET 'utf8' COLLATE 'utf8_general_ci';
2.3 查看创建数据库定义
mysql> SHOW CREATE DATABASE db \G;
*************************** 1. row ***************************
Database: db
Create Database: CREATE DATABASE `db` /*!40100 DEFAULT CHARACTER SET utf8 */
1 row in set (0.00 sec)
2.4 使用数据库
mysql> USE db;
2.5 显示使用的数据库
mysql> SELECT DATABASE();
+------------+
| DATABASE() |
+------------+
| db |
+------------+
2.6 删除数据库
mysql> DROP DATABASE db;
3. 查看数据库系统支持的存储引擎类型
mysql> SHOW ENGINES;
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine | Support | Comment | Transactions | XA | Savepoints |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| InnoDB | DEFAULT | Supports transactions, row-level locking, and foreign keys | YES | YES | YES |
| MRG_MYISAM | YES | Collection of identical MyISAM tables | NO | NO | NO |
| MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO |
| BLACKHOLE | YES | /dev/null storage engine (anything you write to it disappears) | NO | NO | NO |
| MyISAM | YES | MyISAM storage engine | NO | NO | NO |
| CSV | YES | CSV storage engine | NO | NO | NO |
| ARCHIVE | YES | Archive storage engine | NO | NO | NO |
| PERFORMANCE_SCHEMA | YES | Performance Schema | NO | NO | NO |
| FEDERATED | NO | Federated MySQL storage engine | NULL | NULL | NULL |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
其中,Support中DEFAULT表示默认存储引擎。
3.1 InnoDB存储引擎
InnoDB事务型数据库的首选引擎,支持事务安全表(ACID),支持行锁和外键。MySQL5.5.5之后,InnoDB作为默认存储引擎。
InnoDB存储引擎中,创建的表的表结构存储在.frm文件中。数据和索引存储在innodb_data_home_dir和innodb_data_file_path定义的表空间中。
使用InnoDB时,MySQL将在数据目录下创建ibdata1的自动扩展数据文件,以及两个ib_logfile0和ib_logfile1的日志文件。
innodb_data_file_path:指定innodb tablespace文件。如果不在my.ini文件中指定innodb_data_home_dir和innodb_data_file_path,则默认会在datadir目录下创建ibdata1 作为innodb tablespace。
[mysqld] #Path to the database root
datadir="C:/ProgramData/MySQL/MySQL Server 5.6/Data/"
查询innodb_data_home_dir和innodb_data_file_path参数设置:
mysql> SHOW VARIABLES LIKE 'innodb_data%';
+-----------------------+------------------------+
| Variable_name | Value |
+-----------------------+------------------------+
| innodb_data_file_path | ibdata1:12M:autoextend |
| innodb_data_home_dir | |
+-----------------------+------------------------+
my.ini中设置innodb_data_home_dir和innodb_data_file_path参数:
[mysqld] innodb_data_home_dir = /data/3306
innodb_data_file_path = ibdata1:12M:autoextend:max:1G
3.2 MyISAM存储引擎
MyISAM具有较高的插入、查询速度,但不支持事务。MySQL5.5.5之前为默认存储引擎。
MyISAM存储引擎的表存储成3个文件,文件名称与表名相同,扩展名包括frm、MYD和MYI。其中,frm扩展名文件存储表的结构,MYD扩展名文件存储数据(MYData缩写),MYI扩展名文件存储索引(MYIndex缩写)。
MyISAM存储引擎的优点:占用空间小,处理速度快;缺点:不支持实务的完整性和并发性。
4. 查询默认存储引擎
mysql> show variables like 'storage_engine';
+----------------+--------+
| Variable_name | Value |
+----------------+--------+
| storage_engine | InnoDB |
+----------------+--------+
1 row in set (0.00 sec)
可以在my.ini中修改默认存储引擎,将“default-storage-engine=INNODB”改为“default-storage-engine=MyISAM”,重启服务,修改生效。
5. 查看数据库字符集
mysql> SELECT DISTINCT table_schema,table_collation
-> FROM information_schema. TABLES
-> WHERE table_schema NOT IN ('performance_schema', 'sys', 'test', 'mysql', 'information_schema');
+--------------+-----------------+
| table_schema | table_collation |
+--------------+-----------------+
| db | utf8_general_ci |
+--------------+-----------------+
MySQL系列:数据库基本操作(1)的更多相关文章
- Mysql系列-数据库
一 .数据库管理软件的由来 基于我们之前所学,数据要想永久保存,都是保存于文件中,毫无疑问,一个文件仅仅只能存在于某一台机器上. 如果我们暂且忽略直接基于文件来存取数据的效率问题,并且假设程序所有的组 ...
- 01 MySQL之数据库基本操作
01-介绍 数据库(DataBase,DB)是一个长期存储在计算机内的.有组织的.有共享的.统一管理的数据集合. 02-基本操作 2.1 创建数据库 # 查看当前所有的数据库 show databas ...
- mysql学习——数据库基本操作
查看当前数据库 创建数据库 查看数据库定义 删除数据库
- MySQL 系列(二) 你不知道的数据库操作
第一篇:MySQL 系列(一) 生产标准线上环境安装配置案例及棘手问题解决 第二篇:MySQL 系列(二) 你不知道的数据库操作 本章内容: 查看\创建\使用\删除 数据库 用户管理及授权实战 局域网 ...
- 渣渣小本求职复习之路每天一博客系列——数据库基础(MySQL)(5)
前情回顾:昨天学习了MySQL中索引的设计与使用,还了解了一些常见的SQL注入攻击的手段以及防范方法,一般来说,在面试的时候如果不是要求比较高,基本就够用了. 今天碰见一个拿了TP-LINK的offe ...
- 屌炸天实战 MySQL 系列教程(二) 史上最屌、你不知道的数据库操作
此篇写MySQL中最基础,也是最重要的操作! 第一篇:屌炸天实战 MySQL 系列教程(一) 生产标准线上环境安装配置案例及棘手问题解决 第二篇:屌炸天实战 MySQL 系列教程(二) 史上最屌.你不 ...
- MySQL 5.6学习笔记(数据库基本操作,查看和修改表的存储引擎)
1. 数据库基本操作 1.1 查看数据库 查看数据库列表: mysql> show databases; +--------------------+ | Database | +------ ...
- (三)mysql数据库基本操作
(1)SQL语句:结构化查询语句 DDL语句 数据定义语言:数据库丶表丶视图丶索引丶存储过程丶函数丶create drop alter DML语句 数据库操作语言:插入数据insert,删除数据del ...
- MySQL系列(三)--数据库结构优化
良好的数据库逻辑设计和物理设计是数据库高性能的基础,所以对于数据库结构优化是很有必要的 数据库结构优化目的: 1.减少数据的冗余 2.尽量避免在数据插入.删除和更新异常 例如:有一张设计不得当的学生选 ...
随机推荐
- Java开发笔记(六十五)集合:HashSet和TreeSet
对于相同类型的一组数据,虽然Java已经提供了数组加以表达,但是数组的结构实在太简单了,第一它无法直接添加新元素,第二它只能按照线性排列,故而数组用于基本的操作倒还凑合,若要用于复杂的处理就无法胜任了 ...
- Kotlin入门学习笔记
前言 本文适合人群 有一定的java基础 变量与方法 变量声明及赋值 var 变量名: 变量类型 val 变量名: 变量类型 这里,var表示可以改变的变量,val则是不可改变的变量(第一个赋值之后, ...
- Java continue的特殊用法 继续当前循环
前言 今天java练习的时候,遇到了一道有趣的题目,加深了我对cotinue的理解,所以我写个笔记,记录一下continue的特殊用法 continue作用说明 这里我使用个例子来简单说明一下: fo ...
- android如何获取SHA1
某些Google Play服务(例如Google登录和App Invites)要求我们提供签名证书的SHA-1,以便google paly为我们的应用创建OAuth2客户端和API密钥. 那么如何获取 ...
- Git:八、Git自定义:忽略特殊文件&配置别名
1..gitignore配置文件 1)防止加入Git或输入git status时显示,需要让Git忽略的文件: 程序编译生成的非原代码的文件 存放密码的文件 2)配置文件:.gitignore Git ...
- 实战项目中Java heap space错误的解决
部标GPS通讯系统在上线之后,经过不断调试,终于稳定运行一段时间,后来又遇到了Java heap space错误异常!日志如下: 说明系统中有未释放的对象.如何找出这些未释放对象以及监控JVM堆内存, ...
- c/c++ linux epoll系列1 创建epoll
linux epoll系列1 创建epoll 据说select和poll的弱点是,随着连接(socket)的增加,性能会直线下降. epoll不会随着连接(socket)的增加,性能直线下降. 知识点 ...
- c/c++ linux 进程间通信系列6,使用消息队列(message queue)
linux 进程间通信系列6,使用消息队列(message queue) 概念:消息排队,先进先出(FIFO),消息一旦出队,就从队列里消失了. 1,创建消息队列(message queue) 2,写 ...
- Spring Boot 知识图谱
最近有意重新学习下SpringBoot知识,特地总结了SpringBoot的知识点,对于想要学习的人来说,够用. SpringBoot学习路径 第一部分:了解 Spring Boot Spring B ...
- linux 配置vim(vimrc)
打开终端:ctrl+alt+t 进入vim文件:cd /etc/vim 打开vimrc文件:sudo gedit vimrc 然后在行末if语句前加上下面的内容," 这个符号为注释,后面内 ...