系统库
MySQL 在初始化后会创建一些系统库,不同的系统库有不同的用处。
information_schema : 虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息、列信息、权限信息、字符信息等
performance_schema : MySQL5.5 开始新增一个数据库:主要用于收集数据库服务器性能参数,记录处理查询请求时发生的各种事件、锁等现象
mysql : 授权库,主要存储系统用户的权限信息
test : MySQL 数据库系统自动创建的测试数据库(看下载的是不是有测试套件的版本)
创建数据库
语法:create database 数据库名 charset 字符编码;
命名规则:可以由字母、数字、下划线、@ 、# 、$ ,区分大小写,具有唯一性,不能使用关键字,不能单独使用数字,最长128位
以下示例将演示创建出一个名为school 的数据库
mysql> create database school charset utf8;
Query OK,1 row affected (0.00 sec)
mysql>
查看数据库
使用show databases; 可查看所有的数据库
使用show create database 数据库名; 可查看某一数据库的创建信息
使用select database(); 可查看当前所在的数据库
查看所有数据库
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| school |
| sys |
+--------------------+
5 rows in set (0.00 sec)
mysql>
查看数据库的创建信息
mysql> show create database school;
+----------+-----------------------------------------------------------------+
| Database | Create Database |
+----------+-----------------------------------------------------------------+
| school | CREATE DATABASE `school` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+-----------------------------------------------------------------+
1 row in set (0.00 sec)
mysql>
查看当前所在的数据库
mysql> use school; #进入school数据库
Database changed
mysql> select database();
+------------+
| database() |
+------------+
| school |
+------------+
1 row in set (0.00 sec)
mysql>
进入数据库
使用use 数据库名; 可进入指定的数据库
以下将演示从school 数据库中进入mysql 内置授权库中
mysql> use school;
Database changed
mysql> select database();
+------------+
| database() |
+------------+
| school |
+------------+
1 row in set (0.00 sec)
mysql> use mysql;
Database changed
mysql> select database();
+------------+
| database() |
+------------+
| mysql |
+------------+
1 row in set (0.00 sec)
mysql>
修改数据库
修改数据库无非是修改其字符编码,使用alter database 数据库名 charset 字符编码; 进行修改
以下示例将展示将school 数据库字符编码utf8 修改为gbk ,再将其改回来的操作;
mysql> show create database school;
+----------+-----------------------------------------------------------------+
| Database | Create Database |
+----------+-----------------------------------------------------------------+
| school | CREATE DATABASE `school` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+-----------------------------------------------------------------+
1 row in set (0.00 sec)
mysql> alter database school charset gbk;
Query OK,1 row affected (0.00 sec)
mysql> show create database school;
+----------+----------------------------------------------------------------+
| Database | Create Database |
+----------+----------------------------------------------------------------+
| school | CREATE DATABASE `school` /*!40100 DEFAULT CHARACTER SET gbk */ |
+----------+----------------------------------------------------------------+
1 row in set (0.00 sec)
mysql> alter database school charset utf8;
Query OK,1 row affected (0.00 sec)
mysql> show create database school;
+----------+-----------------------------------------------------------------+
| Database | Create Database |
+----------+-----------------------------------------------------------------+
| school | CREATE DATABASE `school` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+-----------------------------------------------------------------+
1 row in set (0.00 sec)
mysql>
删除数据库
使用drop database 数据库名; 可对数据库进行删除操作,
为了防止删除不存在的数据库报错可以使用if 判断要执行删除的数据库是否存在,,drop database if exists 数据库名;
mysql> drop database if exists school;
Query OK,0 rows affected (0.00 sec)
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
mysql>
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|