创建为容器数据库,我把DB2数据库安装完了,谁能告诉我如何创建数据库
很多朋友对于创建为容器数据库和我把DB2数据库安装完了,谁能告诉我如何创建数据库不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!
数据库系统有哪些部分组成
1、数据库:用于存储数据的地方。
数据库提供了一个存储空间来存储各种数据,可以将数据库视为一个存储数据的容器。
2、数据库管理系统:用于管理数据库的软件。
数据库管理系统是用户创建、管理和维护数据库时所使用的软件,位于用户和操作系统之间,对数据库进行统一管理。
3、数据库应用程序:为了提高数据库系统的处理能力所使用的管理数据库库的软件补充。
数据库应用程序负责与DBMS进行通信、访问和管理DBMS中存储的数据,允许用户插入、修改、删除数据库中的数据。
数据库系统的基本要求
1、能够保证数据的独立性。数据和程序相互独立有利于加快软件开发速度,节省开发费用。
2、冗余数据少,数据共享程度高。
3、系统的用户接口简单,用户容易掌握,使用方便。
4、能够确保系统运行可靠,出现故障时能迅速排除;能够保护数据不受非受权者访问或破坏;能够防止错误数据的产生,一旦产生也能及时发现。
5、有重新组织数据的能力,能改变数据的存储结构或数据存储位置,以适应用户操作特性的变化,改善由于频繁插入、删除操作造成的数据组织零乱和时空性能变坏的状况。
6、具有可修改性和可扩充性。
7、能够充分描述数据间的内在联系。
我把DB2数据库安装完了,谁能告诉我如何创建数据库
在发出 CREATE DATABASE命令时,DB2会创建许多文件,这个在前面已经见过。这些文件包括日志文件、配置信息、历史文件和三个表空间。这些表空间是:
SYSCATSPACE:这是保存 DB2系统编目的地方,系统编目跟踪与 DB2对象相关联的所有元数据。 TEMPSPACE1:DB2用来放置中间结果的临时工作区域。 USERSPACE1:默认情况下存放所有用户对象(表、索引)的地方。所有这些文件都放在默认驱动器上的 DB2目录中。默认驱动器通常是安装 DB2产品的卷。
对于简单的应用程序,这个默认配置应该可以满足需要。但是,可能希望改变数据库文件的位置,或者改变 DB2管理这些对象的方式。接下来,我们将更详细地研究 CREATE DATABASE命令。
对于从 DB2 8进行迁移的用户,有一个特殊的注意事项:在 DB2 9之前,CREATE DATABASE命令会为上面列出的所有对象创建 SMS表空间。在 DB2 9中,所有表空间都将定义为自动存储(DMS)表空间。
以下的 CREATE DATABASE命令将数据库放在 Windows操作系统下的 D:驱动器上的 TEST目录中:
CREATE DATABASE MYDB ON D:\TEST
选择 Automatic storage(默认设置)允许 DBA为数据库设置在创建所有表空间容器时可以使用的存储路径。DBA不必显式地定义表空间的位置和大小,系统将自动地分配表空间。例如,下面的数据库创建语句将为数据库中的所有表空间设置自动存储。
CREATE DATABASE TEST
AUTOMATIC STORAGE ON/db2/storagepath001,
/db2/storagepath002,
/db2/storagepath003
AUTORESIZE YES
INITIALSIZE 300 M
INCREASESIZE 75 M
MAXSIZE NONE
在 AUTOMATED STORAGE ON选项后面,给出了三个文件目录(路径)。这三个路径是一个表空间的容器的位置。其他的选项是:
AUTORESIZE YES当表空间用光空间时,系统将自动地扩展容器的大小。 INITIALSIZE 300 M没有定义初始大小的任何表空间的大小默认为 300 MB。每个容器是 100 MB(有三个存储路径)。 INCREASESIZE 75 M(或百分数)当表空间用光空间时,表空间的总空间增加 75 MB。还可以指定一个百分数,在这种情况下,表空间会增长它的当前大小的百分数。 MAXSIZE NONE表空间的最大大小没有限制。如果 DBA希望限制一个表空间可以占用的存储空间,那么可以指定一个最大值。
当使用 AUTOMATIC STORAGE定义表空间时,不需要提供其他参数: CREATE TABLESPACE TEST MANAGED BY AUTOMATIC STORAGE;
在这个命令中,可以提供与表空间相关联的任何参数;但是,使用自动存储可以大大简化日常的表空间维护。与重要的大型生产表相关联的表空间可能需要 DBA更多地干预。在没有启用自动存储的数据库中创建表空间时,必须指定 MANAGED BY SYSTEM或 MANAGED BY DATABASE子句。使用这些子句会分别创建 SMS表空间和 DMS表空间。在这两种情况下,都必须提供容器的显式列表。
如果数据库启用了自动存储,那么有另一个选择。可以指定 MANAGED BY AUTOMATIC STORAGE子句,或者完全去掉 MANAGED BY子句(这意味着自动存储)。在这种情况下,不提供容器定义,因为 DB2会自动地分配容器。
代码页和整理次序
所有 DB2字符数据类型(CHAR、VARCHAR、CLOB、DBCLOB)都有一个相关联的字符代码页。可以认为代码页是一个对照表,用来将字母数字数据转换为数据库中存储的二进制数据。一个 DB2数据库只能使用一个代码页。代码页是在 CREATE DATABASE命令中使用 CODESET和 TERRITORY选项设置的。代码页可以使用单一字节表示一个字母数字字符(单一字节可以表示 256个独特元素),也可以使用多个字节。
英语等语言包含的独特字符相当少;因此单字节代码页对于存储数据足够了。日语等语言需要超过 256个元素才能表示所有的独特字符;因此需要多字节代码页(通常是双字节代码页)。
在默认情况下,数据库的整理次序根据 CREATE DATABASE命令中使用的代码集进行定义。如果指定选项 COLLATE USING SYSTEM,就根据为数据库指定的 TERRITORY对数据值进行比较。如果使用选项 COLLATE USING IDENTITY,那么以逐字节的方式使用二进制表示来比较所有值。
DB2 Administration Guide列出了创建数据库时可用的各种代码页。在大多数情况下,DBA会让这个设置保持为数据库所在的操作系统的默认代码页。
对于需要使用 XML数据的应用程序,有一个特殊的注意事项。当前,DB2只在定义为 Unicode(UTF-8)的数据库中支持 XML列。如果数据库在创建时没有启用 Unicode支持,就不能在其中创建 XML列。
mysql如何创建数据库
数据库可以看作是一个专门存储数据对象的容器,这里的数据对象包括表、视图、触发器、存储过程等,其中表是最基本的数据对象。在 MySQL数据库中创建数据对象之前,先要创建好数据库。
推荐课程:MySQL教程。
在 MySQL中,可以使用 CREATE DATABASE语句创建数据库,语法格式如下:
CREATE DATABASE [IF NOT EXISTS]<数据库名>
[[DEFAULT] CHARACTER SET<字符集名>] [[DEFAULT] COLLATE<校对规则名>];[ ]中的内容是可选的。语法说明如下:
<数据库名>:创建数据库的名称。MySQL的数据存储区将以目录方式表示 MySQL数据库,因此数据库名称必须符合操作系统的文件夹命名规则,注意在 MySQL中不区分大小写。
IF NOT EXISTS:在创建数据库之前进行判断,只有该数据库目前尚不存在时才能执行操作。此选项可以用来避免数据库已经存在而重复创建的错误。
[DEFAULT] CHARACTER SET:指定数据库的默认字符集。
[DEFAULT] COLLATE:指定字符集的默认校对规则。
MySQL的字符集(CHARACTER)和校对规则(COLLATION)两个不同的概念:字符集是用来定义 MySQL存储字符串的方式,校对规则定义了比较字符串的方式,解决排序和字符分组的问题。
字符集和校对规则是一对多的关系,每个字符集至少对应一个校对规则,MySQL支持 39种字符集的将近 200种校对规则。
实例:最简单的创建 MySQL数据库的语句
在 MySQL中创建一个名为 test_db的数据库。在 MySQL命令行客户端输入 SQL语句CREATE DATABASE test_db;即可创建一个数据库,输入的 SQL语句与执行结果如下。
mysql> CREATE DATABASE test_db;
Query OK, 1 row affected(0.12 sec)若再次输入上述语句,则系统会给出错误提示信息,如下所示:
mysql> CREATE DATABASE test_db;
ERROR 1007(HY000): Can't create database'test_db'; database existsMySQL不允许在同一系统创建两个相同名称的数据库。
如果加上IF NOT EXISTS从句,则可以避免类似错误,如下所示:
mysql> CREATE DATABASE IF NOT EXISTS test_db;
Query OK, 1 row affected(0.12 sec)实例:创建 MySQL数据库时指定字符集和校对规则
使用 MySQL命令行工具创建一个测试数据库,命名为 test_db_char,指定其默认字符集为 utf8,默认校对规则为 utf8_chinese_ci(简体中文,不区分大小写),输入的 SQL语句与执行结果如下所示:
mysql> CREATE DATABASE IF NOT EXISTS test_db_char
-> DEFAULT CHARACTER SET utf8
-> DEFAULT COLLATE utf8_chinese_ci;
Query OK, 1 row affected(0.03 sec)这时,可以使用SHOW CREATE DATABASE查看 test_db_char数据库的定义声明,发现该数据库的指定字符集为 utf8,运行结果如下所示:
mysql> SHOW CREATE DATABASE test_db_char;
+--------------+-----------------------------------------------------+
| Database| Create Database|
+--------------+-----------------------------------------------------+
| test_db_char| CREATE DATABASE `test_db_char`/*!40100 DEFAULT CHARACTER SET utf8*/|
+--------------+-----------------------------------------------------+
1 row in set(0.05 sec)为防止字符混乱的情况发生,MySQL有时需要在创建数据库时明确指定字符集;在中国大陆地区,常用的字符集有 utf8和 gbk。
utf8能够存储全球的所有字符,在任何国家都可以使用,默认的校对规则为 utf8_general_ci,对于中文可以使用 utf8_general_ci。
gbk只能存储汉语涉及到的字符,不具有全球通用性,默认的校对规则为 gbk_chinese_ci。
关于创建为容器数据库,我把DB2数据库安装完了,谁能告诉我如何创建数据库的介绍到此结束,希望对大家有所帮助。