A.002.5.Mysql数据库命名规范及管理

Posted 数据库BOSS

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了A.002.5.Mysql数据库命名规范及管理相关的知识,希望对你有一定的参考价值。


  • 1.数据库命名规则

  • 2.数据库设计规范

  • 3.字符集的选择

  • 4.数据库的基本管理



1.数据库命名规则

  • 名字长度不能超过30个字符,推荐使用下划线的命名方式,例如:jssdb_card;
  • 命名必须为英文名字,小写,简介明确;
  • 创建的时候必须添加默认字符集和校对规则字句;

2.数据库设计规范

  • 控制单实例表个数控制在3w以内;
  • 控制单库表个数,建议单库不超过4096个表;
  • 创建数据库的语句必须包含字符集子句和校对规则子句。

3.字符集的选择

3.1字符集

字符(Character)是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等。   字符集(Character set)是多个字符的集合,常见字符集名称:ASCII字符集、GB2312字符集、BIG5字符集、 GB18030字符集、Unicode字符集等。计算机要准确的处理各种字符集文字,就需要进行字符编码,以便计算机能够识别和存储各种文字。

字符编码(Character encoding)也称字集码,是把字符集中的字符通过编码成为指定集合中某一对象(例如:比特模式、自然数序列、8位组或者电脉冲),以便文本在计算机中存储和通过通信网络的传递。常见的例子包括将拉丁字母表编码成摩斯电码和ASCII。其中,ASCII将字母、数字和其它符号编号,并用7比特的二进制来表示这个整数。通常会额外使用一个扩充的比特,以便于以1个字节的方式存储。

3.2Unicode与UTF8、UTF8MB4、UTF16、UTF32关系

mysql中,常用的几个字符集有UTF8、UTF8MB4、UTF16、UTF32等,那么Unicode与UTF8、UTF8MB4、UTF16、UTF32是什么关系?我们新建数据库时选择哪种字符集呢?

Unicode(统一码、万国码、单一码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。UTF8、UTF16、UTF32是Unicode码一种实现形式,都是属于Unicode编码。

3.3选择哪种字符集呢?

UTF8和UTF8MB4是常用的两种字符集,至于这两个选用哪个要根据自己业务情况而定。UTF8MB4兼容UTF8,比UTF8能表示更多的字符,Unicode编码区从编码区1-126属于UTF8区,当然UTF8MB4也兼容这个区,126行以下就是UTF8MB4扩充区,所以你要根据自己的业务进行选择,一般情况下UTF8就满足需求,当然如果考虑到以后扩展,比如考虑到以后存储emoji,就选择UTF8MB4,否则只是浪费空间。我建议还是选择UTF8MB4,毕竟对于大部分公司而言空间不是什么大问题。

3.4几点建议

  • 自主开发系统的数据库utf8mb4作为唯一选择,默认字符集为utf8mb4,排序规则utf8mb4_general_ci;
  • utf8: 1个字符占1~3个字节;utf8mb4:1个字符占1~4个字节
  • 在数据导入导出时注意字符集,用文本编辑时需要注意是否有隐含控制字符(^M)

4.数据库的基本管理

4.1查询数据库

show databases;
show databases like 'jss%';

4.2创建数据库

mysql> create database if not exists jss_sip default character set utf8mb4 default collate utf8mb4_general_ci;        
Query OK, 1 row affected (0.00 sec)
mysql> show create database jss_sip;
+----------+---------------------------------------------------------------------+
| Database | Create Database                                                     |
+----------+---------------------------------------------------------------------+
| jss_sip  | CREATE DATABASE `jss_sip` /*!40100 DEFAULT CHARACTER SET utf8mb4 */ |
+----------+---------------------------------------------------------------------+
1 row in set (0.00 sec)

4.3查询创建数据库的语句

show create database jss_sip;

4.4 更新数据库选项信息

alter database jss_sip character set utf8;  --生产环境中,不能这么操作

4.5删除数据库

drop database jss_sip;
drop database if exists itpux3;
添加个人微信,获取更多学习教程


以上是关于A.002.5.Mysql数据库命名规范及管理的主要内容,如果未能解决你的问题,请参考以下文章

App仓库及发布规范

整理最全规范之Git仓库管理规范,Java开发规范,最全Java命名规范,数据库开发设计规范,接口设计规范

整理最全规范之Git仓库管理规范,Java开发规范,最全Java命名规范,数据库开发设计规范,接口设计规范

前端开发代码结构及性能优化大总结

MySQL命名设计及使用规范《MySQL命名设计及使用规范》

MySQL命名设计及使用规范《MySQL命名设计及使用规范》