以前の記事では、インストールGreenplumはデータベース、起動、シャットダウン、ステータスチェック、ログや他の操作を説明し、データベースが作成されている、データベースを使用する方法について説明します。慣例により、我々はテストユーザー、テーブルスペース、データベースを作成する必要があります。テストユーザーdbdreamを作成します。
2 |
NOTICE: resource queue required -- using default resource queue "pg_default" |
通常、ユーザーは十分ログイン特権基本与え、作成、ユーザーの構文を作成したレコードを作成していない、見にroleコマンドを作成する時間を\することができます。あなたは以下のようにpg_roles辞書によるユーザ情報のオープンデータベースを見ることができます。
ユーザーを作成した後、あなたはまた、ユーザーにリモートログイン権限を付与するためにpg_hba.confファイルを変更する必要があります。
1 |
[gpadmin@mdw gpseg-1]$ vi pg_hba.conf |
3 |
host all dbdream 10.9.15.20/32 md5 |
力にそれを持って来るために-uコマンド設定ファイルgpstopをリロードした後、dbdreamユーザーは、データベースにリモートでアクセスすることができます。
1 |
[gpadmin@mdw gpseg-1]$ psql -d postgres -U dbdream -h 10.9.15.20 -p 5432 |
2 |
Password for user dbdream: |
あなたは、現在のログイン情報を表示するコマンドCONNINFOの\ Cコマンドまたは\を使用することができます。
2 |
You are now connected to database "postgres" as user "dbdream". |
オペレーティングシステム層に作成されたファイルスペースのファイル・スペースを作成するには、表スペースの必要性を作成し、制御ファイルを作成し、通常は計画し、ディレクトリを作成する必要があり、ディレクトリがすでに存在して指定する必要があります。マスターセグメントと、すべてのノードを作成する必要があります。あなたは、現在のデータベース・テーブル・スペースとファイル・スペースの対応を表示するには、次のコマンドを使用することができます。
3 |
------------+----------- |
現在のデータベースのファイル・スペースだけをpg_segment、上記pg_defaultとpg_globalスペース2つのテーブルがあります。ディレクトリのマスターノードを作成するには、次の。
1 |
[gpadmin@mdw ~]$ mkdir -p /gpdb/gpdata/fspc_master |
そして、gpsshコマンドマスターノードによってディレクトリのSegmentノードを作成します。
1 |
[gpadmin@mdw ~]$ gpssh -f /gpdb/app/config/seg_host -e 'mkdir -p /gpdb/gpdata/fspc_segment' |
2 |
[sdw1] mkdir -p /gpdb/gpdata/fspc_segment |
3 |
[sdw2] mkdir -p /gpdb/gpdata/fspc_segment |
4 |
[sdw3] mkdir -p /gpdb/gpdata/fspc_segment |
ディレクトリを作成したら、gpfilespaceコマンドでファイル・スペースを作成することができます。
1 |
gpadmin@mdw gpdata]$ gpfilespace |
2 |
20160116:11:25:31:004066 gpfilespace:mdw:gpadmin-[INFO]:- |
3 |
A tablespace requires a file system location to store its database |
4 |
files. A filespace is a collection of file system locations for all components |
5 |
in a Greenplum system (primary segment, mirror segment and master instances). |
6 |
Once a filespace is created, it can be used by one or more tablespaces. |
8 |
20160116:11:25:31:004066 gpfilespace:mdw:gpadmin-[INFO]:-getting config |
9 |
Enter a name for this filespace |
名前だけから、表スペースの名前を入力しますが、最初のgp_で使用することはできません。
03 |
Checking your configuration: |
04 |
Your system has 1 hosts with 0 primary and 0 mirror segments per host. |
05 |
Your system has 3 hosts with 1 primary and 0 mirror segments per host. |
07 |
Configuring hosts: [mdw] |
09 |
Configuring hosts: [sdw1, sdw2, sdw3] |
11 |
Please specify 1 locations for the primary segments, one per line: |
ここでは、セグメント入力ノードのファイル・スペースディレクトリ。
1 |
primary location 1> /gpdb/gpdata/fspc_segment |
3 |
Enter a file system location for the master |
ここではいくつかのマスタ・ファイル・スペースのディレクトリを入力します。
1 |
master location> /gpdb/gpdata/fspc_master |
2 |
20160116:11:27:21:004066 gpfilespace:mdw:gpadmin-[INFO]:-Creating configuration file... |
3 |
20160116:11:27:21:004066 gpfilespace:mdw:gpadmin-[INFO]:-[created] |
4 |
20160116:11:27:21:004066 gpfilespace:mdw:gpadmin-[INFO]:- |
5 |
To add this filespace to the database please run the command: |
6 |
gpfilespace --config /gpdb/gpdata/gpfilespace_config_20160116_112531 |
gpfilespaceコマンドが完了した後、最後の行の上にある設定ファイルを生成し、/ gpdb / gpdata / gpfilespace_config_20160116_112531、このファイルの内容を表示するが発見され、gpfilespaceコマンドの上にのみ設定ファイル・スペースを作成し、されていません実際のファイル・スペースを作成します。
1 |
[gpadmin@mdw gpdata]$ cat /gpdb/gpdata/gpfilespace_config_20160116_112531 |
3 |
mdw:1:/gpdb/gpdata/fspc_master/gpseg-1 |
4 |
sdw1:2:/gpdb/gpdata/fspc_segment/gpseg0 |
5 |
sdw2:3:/gpdb/gpdata/fspc_segment/gpseg1 |
6 |
sdw3:4:/gpdb/gpdata/fspc_segment/gpseg2 |
这个文件可以自己创建并修改,真正创建文件空间需要运行刚才gpfilespace命令后的最后一行。
01 |
gpadmin@mdw gpdata]$ gpfilespace --config /gpdb/gpdata/gpfilespace_config_20160116_112531 |
02 |
20160116:11:29:19:004180 gpfilespace:mdw:gpadmin-[INFO]:- |
03 |
A tablespace requires a file system location to store its database |
04 |
files. A filespace is a collection of file system locations for all components |
05 |
in a Greenplum system (primary segment, mirror segment and master instances). |
06 |
Once a filespace is created, it can be used by one or more tablespaces. |
08 |
20160116:11:29:19:004180 gpfilespace:mdw:gpadmin-[INFO]:-getting config |
09 |
Reading Configuration file: '/gpdb/gpdata/gpfilespace_config_20160116_112531' |
10 |
20160116:11:29:19:004180 gpfilespace:mdw:gpadmin-[INFO]:-Performing validation on paths |
11 |
.............................................................................. |
12 |
20160116:11:29:19:004180 gpfilespace:mdw:gpadmin-[INFO]:-Connecting to database |
13 |
20160116:11:29:19:004180 gpfilespace:mdw:gpadmin-[INFO]:-Filespace "fspc1" successfully created |
这样才是真正创建完成文件空间,才能在数据库中查询到新建的文件空间信息。
创建完文件空间,即可在文件空间上创建表空间,创建表空间必须使用support权限用户。
1 |
postgres-> \c postgres gpadmin |
2 |
You are now connected to database "postgres" as user "gpadmin". |
非support权限用户要使用新建的表空间,必须要使用support用户对其授予操作权限才可以,否则会遇到下面的错误。
2 |
Password for user dbdream: |
3 |
You are now connected to database "dbdream" as user "dbdream". |
5 |
dbdream=> create table t_test(id int,name varchar(10)) DISTRIBUTED BY(id); |
6 |
ERROR: permission denied for tablespace tbs1 |
要使用户默认就使用新建的表空间,需要设置用户的默认表空间。
授权后,即可使用新建的表空间。
01 |
postgres-> \c postgres gpadmin |
02 |
You are now connected to database "postgres" as user "gpadmin". |
07 |
dbdream=> create table t_test(id int,name varchar(10)) DISTRIBUTED BY(id); |
11 |
Column | Type | Modifiers |
12 |
--------+-----------------------+----------- |
14 |
name | character varying(10) | |
具有createdb权限的用户,都可以创建数据库了,语法可以通过\h create database命令来查看,非常简单。比如下面这条命令就可以创建一个数据库。
1 |
postgres=> create database dbdream; |
也可以在创建数据库时,指定数据库使用的默认表空间。
创建数据库的用户必须要有createdb权限或者support用户权限,这也是之前创建用户是为什么直接赋予了createdb权限,可以通过pg_database字典来查看数据库信息。
2 |
datname | datdba | dattablespace | |
3 |
-----------+--------+----------------+ |
4 |
dbdream | 17197 | 1663 | |
7 |
template1 | 10 | 1663 | |
8 |
template0 | 10 | 1663 | |
datdba字段表示的是数据库的所有者(创建者),这里存的是用户的oid,10是gpadmin用户,17191是dbdream用户,可以通过pg_role字典来查看。dattablespace字段表示的是表空间。存的也是表空间的ID,1663是pg_default表空间,17199是新建的tbs1表空间,可以通过pg_tablespace字典开查看。
固定リンクの記事:http://www.dbdream.com.cn/2016/01/greenplum%e6%95%b0%e6%8d%ae%e5%ba%93%e5%88%9b%e5%bb% BA%E7%94%A8% E6%88%B7%E3%80%81%E6%96%87%E4%BB%B6%E7%A9%のBA%のE9%97%B4%以下のE3%80%81% E8%A1%A8%E7% A9%のBA%のE9%97%B4%以下のE3%80%81%のE6%95%B0%のE6の%の8D%のAEの%のE5の%のBA%93 / | 文字チュン、システムの安定性、および閉鎖ラインは目をロールバックしません!