mysql-数据库的操作

系统数据库

执行如下命令,查看系统所有的数据库

mysql> show databases;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| mysql              |

| performance_schema |

| scrapyDB           |

| sys                |

+--------------------+

5 rows in set (0.00 sec)

nformation_schema: 虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息、列信息、权限信息、字符信息等

performance_schema: MySQL 5.5开始新增一个数据库:主要用于收集数据库服务器性能参数,记录处理查询请求时发生的各种事件、锁等现象

mysql: 授权库,主要存储系统用户的权限信息

sys:  这个库是通过视图的形式把information_schema 和performance_schema结合起来,查询出更加令人容易理解的数据,存储过程可以可以执行一些性能方面的配置,也可以得到一些性能诊断报告内容,存储函数可以查询一些性能信息

scrapyDB:  用户自己创建的数据库,默认安装后只有上面4个库

创建数据库

1 帮助语法:

mysql> help create database

Name: 'CREATE DATABASE'

Description:

Syntax:

CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name

    [create_specification] ...

create_specification:

    [DEFAULT] CHARACTER SET [=] charset_name

  | [DEFAULT] COLLATE [=] collation_name

CREATE DATABASE creates a database with the given name. To use this

statement, you need the CREATE privilege for the database. CREATE

SCHEMA is a synonym for CREATE DATABASE.

URL: http://dev.mysql.com/doc/refman/5.7/en/create-database.html

2 创建数据库语法,charset utf8为指定数据编码

mysql> create database db1 charset utf8;

Query OK, 1 row affected (0.00 sec)

3 数据库命名规则:

可以由字母、数字、下划线、@、#、$

区分大小写

唯一性

不能使用关键字如 create select

不能单独使用数字

最长128位

# 基本上跟python或者js的命名规则一样

数据库相关操作

查看数据库

mysql> show databases;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| db1                |

| mysql              |

| performance_schema |

| scrapyDB           |

| sys                |

+--------------------+

6 rows in set (0.00 sec)

查看当前库

mysql> show create database db1;

+----------+--------------------------------------------------------------+

| Database | Create Database                                              |

+----------+--------------------------------------------------------------+

| db1      | CREATE DATABASE `db1` /*!40100 DEFAULT CHARACTER SET utf8 */ |

+----------+--------------------------------------------------------------+

1 row in set (0.00 sec)

选择数据库

mysql> use db1;

Database changed

查看所在的库

mysql> select database();

+------------+

| database() |

+------------+

| db1        |

+------------+

1 row in set (0.00 sec)

修改数据库字符编码

mysql> alter database db1 charset gbk;

Query OK, 1 row affected (0.00 sec)

删除数据库

mysql> drop database db1;

Query OK, 0 rows affected (0.00 sec)

了解内容

SQL语言主要用于存取数据、查询数据、更新数据和管理关系数据库系统,SQL语言由IBM开发。SQL语言分为3种类型:

1、DDL语句    数据库定义语言: 数据库、表、视图、索引、存储过程,例如CREATE DROP ALTER

2、DML语句    数据库操纵语言: 插入数据INSERT、删除数据DELETE、更新数据UPDATE、查询数据SELECT

3、DCL语句    数据库控制语言: 例如控制用户的访问权限GRANT、REVOKE

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏java达人

MySQL 加锁处理分析

背景 MySQL/InnoDB的加锁分析,一直是一个比较困难的话题。我在工作过程中,经常会有同事咨询这方面的问题。同时,微博上也经常会收到MySQL锁相关的私信...

31250
来自专栏csxiaoyao

mysql 命令完全总结

45470
来自专栏蓝天

测试mktime和localtime_r性能及优化方法

26410
来自专栏高爽的专栏

MySQL从5.5升级到5.6,TIMESTAMP的变化

前言 前段时间,系统MySQL从5.5升级到了5.6,系统出现了大量的异常。大部分异常引起原因是由于TIMESTAMP的行为发生了变化。 TIMESTAMP在M...

24800
来自专栏蜉蝣禅修之道

Mysql学习笔记(一)创建触发器

35310
来自专栏PhpZendo

MySQL创建用户与授权

假如你在给用户'pig'@'%'授权的时候是这样的(或类似的):GRANT SELECT ON test.user TO 'pig'@'%',则在使用REVOK...

55710
来自专栏magicsoar

Mysql Innodb 锁机制 select * from table where?insert?delete?update?3个insert的死锁2个update的死锁3个以上delete的死

latch与lock latch 可以认为是应用程序中的锁,可以称为闩锁(轻量级的锁) 因为其要求锁定的时间必须要非常短,若持续时间长,则会导致应用性能非常差,...

34580
来自专栏weixuqin 的专栏

MySQL 学习笔记(三):完整性和触发器设计

13040
来自专栏乐沙弥的世界

基于案例理解MySQL执行计划

版权声明:本文为博主原创文章,欢迎扩散,扩散请务必注明出处。

10420
来自专栏枕边书

PHP中的数据库一、MySQL优化策略综述

前些天看到一篇文章说到PHP的瓶颈很多情况下不在PHP自身,而在于数据库。我们都知道,PHP开发中,数据的增删改查是核心。为了提升PHP的运行效率,程序员不光需...

34580

扫码关注云+社区

领取腾讯云代金券