PostgreSQL 可以限制access数据库大小限制或者表的大小吗

博客访问: 217265
博文数量: 87
博客积分: 3353
博客等级: 中校
技术积分: 731
注册时间:
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
分类: 数据库开发技术
/blog/366038
pg_dump 是一个将 PostgreSQL 数据库保存到一个脚本或者归档文件中的工具.这个脚本文件的格式是纯文本,它包含许多 SQL 命令, 这些 SQL 命令可以用于重建该数据库并将之恢复到保存成脚本的时候的状态.要恢复这些脚本,使用 psql。 它们甚至可以用于在其它机器甚至是其它硬件体系的机器上 重建该数据库,通过对脚本进行一些修改,甚至可以在其它 SQL 数据库产品 上重建该数据库. 另外,还有候选的归档文件格式可以和 pg_restore 一起使用重建数据库, 并且它们也允许 pg_restore 对恢复什么东西进行选择,或者甚至是在恢复之前对需要恢复的条目进行重新排序. 归档文件也是设计成可以跨平台移植的. pg_dump 将保存用于重建所有用户定义的类型,函数,表,索引聚集和操作符所必须的信息.另外, 所有数据是用文本格式拷贝出来的,因而也可以很容易地拷贝回去, 也很容易用工具编辑. 如 果一种候选文件格式和 pg_restore 结合,那么pg_dump就能提供一种灵活的归档和传输机制. pg_dump 可以用于备份整个数据库, 然后就可以使用 pg_restore 检查 这个归档和/或选择要恢复的数据库部分. 最灵活等输出文件格式是"custom(客户化)"格式 (-Fc).
它允许对归档元素进行选取和重新排列,并且缺省时是压缩的.tar 格式 (-Ft) 不是压缩的并且我们在装载等时候不可能重排列,不过它也很灵活;还有,它可以用其它工具,比如 tar 处理. 在运行 pg_dump 的时候,我们应该检查 输出,看看是否有任何警告存在(在标准错误上打印), 特别是下面列出的限制. 即使数据库在并行使用着的时候,pg_dump 也制作出连贯的备份.pg_dump 并不阻塞其它 用户对数据库的访问(读或写). 选项下面的命令行参数用于控制输出格式。
&dbname 声明将要转储的数据库名. 如果没有声明这个参数,那么使用环境变量 PGDATABASE。 如果那个环境变量也没声明,那么用发起连接的用户名。
&-a --data-only 只输出数据,不输出结构(表定义). 这个选项只是对纯文本格式有意义.对于其它格式,你可以在调用 pg_restore 的时候声明选项.
&-b --blobs 转储数据和 BLOB 数据.
&-c --clean 输出在创建数据库创建命令之前先清理(删除) 该数据库对象的命令.这个选项只是对纯文本格式有意义.对于其它格式,你可以在调用 pg_restore 的时候声明选项.
&-C --create 以一条创建该数据库本身并且与这个数据库联接等命令开头进行输出. (如果是这种形式的脚本,那么你在运行脚本之前和哪个数据库联接就不重要了.) 这个选项只对纯文本格式有意义.对于其它格式,你可以在调用 pg_restore 的时候声明该选项.
&-d --inserts 将数据输出为的INSERT命令 (而不是 COPY). 这样会导致恢复非常缓慢.但却令归档更容易移植到其它 SQL 数据库.
-D --column-inserts --attribute-inserts 把数据转储为带有明确字段名的 INSERT 命令. 这样会导致恢复非常缓慢, 但是如果你想重新排列字段的顺序,那么它是必须的.
-f file --file=file 把输出发往指定的文件.如果忽略这些,则使用标准输出. -F format --format=format 选择输出的格式. format可以是下列之一: p 输出纯文本SQL脚本文件(缺省) t 输出适合输入到 pg_restore 里的tar归档文件.使用这个归档允许在恢复数据库时重新排序和/或把表结构排除在外. 同时也可能可以在恢复的时候限制对哪些数据进行恢复. c 输出适于给 pg_restore 用的客户化归档. 这是最灵活的格式,它允许对装载的数据和纲要元素进行重新排列.这个格式缺省的时候是压缩的.
-i --ignore-version 忽略在 pg_dump 和数据库服务器之间的版本差别. pg_dump 可以处理来自以前版本的PostgreSQL 的数据库,但是太老的版本则不被支持了(目前是支持到 7.0)。 如果你需要跨越版本检查时才使用这个选项( 而且如 pg_dump 失效,别说我没警告你).
-o --oids 为每个表都输出对象标识(OID). 如果你的应用在某种程度上引用了OID字段的话,(比如,在外键约束中 用到). 那么使用这个选项. 否则,不应该使用这个选项.
-O --no-owner 不 把对象的所有权设置为对应源数据库. 通常, pg_dump 发出 (psql特有的) \connect 语句以设置纲要元素的所有权. 又见 -R 和 -X use-set-session-authorization 选项. 请注意 -O 并不防止所有对数据库的重新联接,只是防止那些为调整权限进行的排它联接. 这个选项只是对纯文本格式有意义.对于其它格式,在你调用 pg_restore 的时候你可以声明该选项.
-R --no-reconnect 禁止 pg_dump 发出任何 \connect 语句. 在 纯文本输出模式下,禁止 pg_dump 输出那种需要在恢复数据库的过程中重新联接数据库的脚本.一般的恢复脚本通常需要以不同的用户与服务器联接多次以设置 该对象最初的所有权.这个选项是一个相当粗糙的指令,因为 它令 pg_dump 失去了这个权限信息, 除非你使用 -X use-set-session-authorization 选项.我们不想在恢复的过程中重新联接的一个可能原因是也许对 数据库的访问需要手工干涉(也就是说,口令). 这个选项只是对纯文本格式有意义.对于其它格式, 你在调用 pg_restore 的时候可以声明选项.
-s --schema-only 只输出表纲要(定义),不输出数据.
-S username --superuser=username 在某些场合,pg_dump 创建的脚本或者归档需要有 超级用户访问的权限,比如在关闭触发器或者为大纲元素甚至所有属性时. 这个选项声明在这些场合时使用的用户名.
-t table --table=table 只输出表 table的数据.
-v --verbose 声明冗余模式。 这样将令 pg_dump 在标准错误上打印 进度信息。 -x --no-privileges --no-acl 避免输出 ACL(赋予/撤消 命令)和表的所有者关系信息.
-X use-set-session-authorization --use-set-session-authorization 通 常,如果一个 pg_dump 生成的(纯文本模式)脚本 必须更改当前的数据库用户(比如,设置正确的对象所有权)的时候, 它使用 psql \connect 命令. 这条命令实际上打开一个新的联接,这个时候可能需要收工干涉 (比如,输入口令).如果你使用 -X use-set-session-authorization,那么 pg_dump 则会输出 SET SESSION AUTHORIZATION 命令.这么做效果相同, 但是它要求使用生成的脚本做数据库恢复的用户是数据库超级用户.这个选项有效地覆盖了 -R 选项. 因为 SET SESSION AUTHORIZATION 是一个 标准的 SQL 命令,而 \connect 只能用于 psql,因此这个选项同时还在理论上增加 了输出脚本的可移植性. 这个选项只对纯文本格式有意义.对于其它格式,你可以在你调用 pg_restore 的时候声明该选项.
&-Z 0..9 --compress=0..9 声明在那些支持压缩的格式中使用的压缩级别. (目前只有客户化格式支持压缩). 下面的命令行参数控制数据库为联接参数。
-h host --host=host 声明运行服务器 的机器的主机名.缺省是使用本地Unix主控套接字,而不是一个 IP 联接. 如果主机名以斜扛开头,则它被用做到 Unix 域套接字的路径.
-p port --port=port 声明服务器 正在侦听并等待联接的TCP/IP 端口或本地 Unix 主控套接字文件句柄. 缺省的端口号是5432,或者环境变量 PGPORT 的值(如果存在).
-U username 以给出用户身分联接.
-W 强制口令提示.如果服务器需要口令认证,那么这个动作应该自动发生. 只有在一些平台上才有长选项形式。
环境 PGDATABASE PGHOST PGPORT PGUSER 缺省连接参数 诊断 Connection to database 'template1' failed. connectDBStart() -- connect() failed: No such file or directory & & & &Is the postmaster running locally & & & &and accepting connections on Unix socket '/tmp/.s.PGSQL.5432'? pg_dump 无法与指定主机和端口上的 PostgreSQL 服务器 相联.如果看到这条信息,确认 服务器 正在给定的主机上你所声明的端口上运行.
dumpSequence(table): SELECT failed 你没有读取数据库的权限. 和你的 PostgreSQL 节点管理员联系. 注意: pg_dump 在内部使用 SELECT 语句.如果你运行 pg_dump 时碰到问题,确认你能够使用象 psql 这样的程序从数据 库选择. 注意如 果你的安装给 template1 数据库增加了任何你自己的东西,那么请注意把 pg_dump 的输出恢复到一个 真正空的数据库中;否则你可能会收到因为重复定义所追加的对象 而造成的错误信息.要制作一个没有任何本地附属物的数据库,可以从 template0 而不是 template1 拷贝,比如∶ CREATE DATABASE foo WITH TEMPLATE template0;
pg_dump 有几个限制∶ 在转储一个表或者作为纯文本转储时,pg_dump 无法操作 大对象.大对象必须整体地使用二进制归档格式中的一种进行转储. 在进行纯数据转储时,pg_dump 发出一些查询先关闭在用户 表上面的触发器,然后插入数据,数据插入完成后再发出查询打开触发器. 如果恢复动作在中间停止,那么系统表可能就会处于一种错误状态. tar 归档的成员的大小限制于 8 GB。(这个限制是 tar 文件格式 的固有限制。)因此这个格式无法用于那些一个表的大小超过这个 尺寸的原文表现。tar 归档和任何其它输出格式的总大小是不受 限制的,只是可能会又操作系统的限制。
转储一个数据库∶ $ pg_dump mydb & db.out
重载这个数据库∶ $ psql -d database -f db.out
输出一个叫 mydb 的包含BLOB 的数据库到一个 tar 文件: $ pg_dump -Ft -b mydb & db.tar
把这个数据库(连同BLOB) 一起恢复到一个现有的叫 newdb 的数据库: $ pg_restore -d newdb db.tar
历史 pg_dump 工具最早出现在 Postgres95 版本0.02. 非纯文本输出格式在 PostgreSQL 版本 7.1 时引入.
阅读(23947) | 评论(0) | 转发(0) |
相关热门文章
给主人留下些什么吧!~~
请登录后评论。PostgreSQL数据库安装使用图文教程_西西软件资讯
西西软件园多重安全检测下载网站、值得信赖的软件下载站!
→ PostgreSQL数据库安装使用图文教程
V2.0英文特别版
类型:数据库类大小:3.5M语言:英文 评分:5.0
朝三暮四的我现在开始研究研究PostgreSQL。也不知道是不是这个在国内的认知程度还不是很高,所以上google搜索的基本上都是英文的资料。从一个oracle从业人员的角度来看,玩儿一种数据库首先要把软件装上,然后打开黑框框敲一些代码进去,建个库,查个数什么的。& & &花开两朵,各表一枝,现在我把我安装后使用的一些笔记分享出来。& & &windows底下的安装其实很简单的,选择好安装的路径之后就可以一路下一步了。最后选择性的安装这个那个的可以不用理会,毕竟我只是个数据库开发人员。& & &安装好以后就可以开始用了。按照oracle的思维,应该是打开一个黑框框,首先利用操作系统验证,以sysdba进去,然后建立表空间,新建用户,赋权,用新建的用户进去,建表,插数,select。一步一步来。& & &首先是打开黑框框,以超级用户身份登录进去。这里需要说明的是,和oracle不一样,似乎不能用操作系统认证登录成超级用户,只能用bin下自带的一个createuser的可执行文件进行建用户操作。& & &如图所示,在安装的时候有一步骤时要输入密码的,这个密码就是默认的超级用户,postgres。现在要建立新用户,就要先连接上这个用户。所以才会有红色框中的参数-U。我建立的用户叫做wings,-P是为了要求系统在建立用户之后建密码。最后输入的口令就是postgres用户的。& & &建立号用户之后,就应该建库了,如果可以的话应该先建立一个表空间。但是我不知道应该怎么建立,以后再说吧。先建库。建库有一个createdb可执行文件,使用之:& & & 把这个库建立到wings用户底下。就像是oracle中,用一个用户登录sqlplus之后建立数据库,那么这个数据库就是属于该用户的。有一个自带的管理软件AdminIII,相当好用,可以看看一看数据库建立成功没有:可以看到数据库的建立如我所愿。接下来就可以在黑框框中输入建表命令之后插数了。这个AdminIII也是可以做到的。而且图形化界面好得多,也不会在出错以后难以进行更改。下面是Linux系统PostgreSQL安装使用教程:PostgreSQL的安装和基本用法,供初次使用者上手。以下内容基于Debian操作系统,其他操作系统实在没有精力兼顾,但是大部分内容应该普遍适用。安装1、首先,安装PostgreSQL客户端。sudo apt-get install postgresql-client然后,安装PostgreSQL服务器。sudo apt-get install postgresql2、正常情况下,安装完成后,PostgreSQL服务器会自动在本机的5432端口开启。如果还想安装图形管理界面,可以运行下面命令,但是本文不涉及这方面内容。sudo apt-get install pgadmin3添加新用户和新数据库1、初次安装后,默认生成一个名为postgres的数据库和一个名为postgres的数据库用户。这里需要注意的是,同时还生成了一个名为postgres的Linux系统用户。下面,我们使用postgres用户,来生成其他用户和新数据库。好几种方法可以达到这个目的,这里介绍两种。2、第一种方法,使用PostgreSQL控制台。首先,新建一个Linux新用户,可以取你想要的名字,这里为dbuser。sudo adduser dbuser &&然后,切换到postgres用户。sudo su - postgres下一步,使用psql命令登录PostgreSQL控制台。psql这时相当于系统用户postgres以同名数据库用户的身份,登录数据库,这是不用输入密码的。如果一切正常,系统提示符会变为”postgres=#”,表示这时已经进入了数据库控制台。以下的命令都在控制台内完成。第一件事是使用\password命令,为postgres用户设置一个密码。\password postgres第二件事是创建数据库用户dbuser(刚才创建的是Linux系统用户),并设置密码。CREATE USER dbuser WITH PASSWORD 'password';第三件事是创建用户数据库,这里为exampledb,并指定所有者为dbuser。CREATE DATABASE exampledb OWNER第四件事是将exampledb数据库的所有权限都赋予dbuser,否则dbuser只能登录控制台,没有任何数据库操作权限。GRANT ALL PRIVILEGES ON DATABASE最后,使用\q命令退出控制台(也可以直接按ctrl+D)。\q3、第二种方法,使用shell命令行。添加新用户和新数据库,除了在PostgreSQL控制台内,还可以在shell命令行下完成。这是因为PostgreSQL提供了命令行程序createuser和createdb。还是以新建用户dbuser和数据库exampledb为例。首先,创建数据库用户dbuser,并指定其为超级用户。sudo -u postgres createuser --superuser dbuser然后,登录数据库控制台,设置dbuser用户的密码,完成后退出控制台。sudo -u postgres psql\password dbuser\q接着,在shell命令行下,创建数据库exampledb,并指定所有者为dbuser。sudo -u postgres createdb -O dbuser exampledb登录数据库1、添加新用户和新数据库以后,就要以新用户的名义登录数据库,这时使用的是psql命令。psql -U dbuser -d exampledb -h 127.0.0.1 -p 5432上面命令的参数含义如下:-U指定用户,-d指定数据库,-h指定服务器,-p指定端口。输入上面命令以后,系统会提示输入dbuser用户的密码。输入正确,就可以登录控制台了。psql命令存在简写形式。如果当前Linux系统用户,同时也是PostgreSQL用户,则可以省略用户名(-U参数的部分)。举例来说,我的 Linux系统用户名为ruanyf,且PostgreSQL数据库存在同名用户,则我以ruanyf身份登录Linux系统后,可以直接使用下面的命令 登录数据库,且不需要密码。psql exampledb此时,如果PostgreSQL内部还存在与当前系统用户同名的数据库,则连数据库名都可以省略。比如,假定存在一个叫做ruanyf的数据库,则直接键入psql就可以登录该数据库。psql另外,如果要恢复外部数据,可以使用下面的命令。psql exampledb & exampledb.sqlEND控制台命令1、除了前面已经用到的\password命令(设置密码)和\q命令(退出)以外,控制台还提供一系列其他命令。\h:查看SQL命令的解释,比如\h select。\?:查看psql命令列表。\l:列出所有数据库。\c [database_name]:连接其他数据库。\d:列出当前数据库的所有表格。\d [table_name]:列出某一张表格的结构。\du:列出所有用户。\e:打开文本编辑器。\conninfo:列出当前数据库和连接的信息。END数据库操作基本的数据库操作,就是使用一般的SQL语言。# 创建新表CREATE TABLE usertbl(name VARCHAR(20), signupdate DATE);# 插入数据INSERT INTO usertbl(name, signupdate) VALUES('张三', '');# 选择记录SELECT * FROM user_# 更新数据UPDATE user_tbl set name = '李四' WHERE name = '张三';# 删除记录DELETE FROM user_tbl WHERE name = '李四' ;# 添加栏位ALTER TABLE user_tbl ADD email VARCHAR(40);# 更新结构ALTER TABLE usertbl ALTER COLUMN signupdate SET NOT NULL;# 更名栏位ALTER TABLE usertbl RENAME COLUMN signupdate TO# 删除栏位ALTER TABLE user_tbl DROP COLUMN# 表格更名&ALTER TABLE usertbl RENAME TO# 删除表格DROP TABLE IF EXISTS backup_
04-2604-1901-2401-2301-2101-1701-1301-1301-1301-12
阅读本文后您有什么感想? 已有23人给出评价!
名称大小下载PostgreSQL表空间、数据库、模式、表、用户/角色之间的关系 - CSDN博客
PostgreSQL表空间、数据库、模式、表、用户/角色之间的关系
&& 看PostgreSQL9的官方文档,我越看越迷糊,这表空间,数据库,模式,表,用户,角色之间的关系怎么在PostgreSQL里这么混乱呢?经过中午的一个小实验,我逐渐理清了个中来龙去脉。下面我来还原我的试验,并循序讲清其中关系。
首先,实验出角色与用户的关系&&& 在PostgreSQL中,存在两个容易混淆的概念:角色/用户。之所以说这两个概念容易混淆,是因为对于PostgreSQL来说,这是完全相同的两个对象。唯一的区别是在创建的时候:&1.我用下面的psql创建了角色kanon:&& CREATE ROLE kanon PASSWORD 'kanon';&& 接着我使用新创建的角色kanon登录,PostgreSQL给出拒绝信息:
&&&FATAL: role 'kanon' is not permitted to log in.&& 说明该角色没有登录权限,系统拒绝其登录。 &2.我又使用下面的psql创建了用户kanon2:&& CREATE USER kanon PASSWORD 'kanon2';&& 接着我使用kanon2登录,登录成功。& &难道这两者有区别吗?查看文档,又这么一段说明:"CREATE USER is the same as CREATE ROLE except that it implies LOGIN."----CREATE USER除了默认具有LOGIN权限之外,其他与CREATE ROLE是完全相同的。&& 为了验证这句话,修改kanon的权限,增加LOGIN权限:ALTER ROLE kanon LOGIN;再次用kanon登录,成功!&& 那么,事情就明了了:CREATE ROLE kanon PASSWORD 'kanon' LOGIN 等同于CREATE USER kanon PASSWORD 'kanon'.&& 这就是ROLE/USER的区别。
然后,数据库与模式的关系&&& 看文档了解到:模式(schema)是对数据库(database)逻辑分割。在数据库创建的同时,就已经默认为数据库创建了一个模式--public,这也是该数据库的默认模式。所有为此数据库创建的对象(表、函数、试图、索引、序列等)都是常见在这个模式中的。&实验如下:&1.创建一个数据库dbtt----CREATE DATABASE&2.用kanon角色登录到dbtt数据库,查看dbtt数据库中的所有模式:/ 显示结果是只有public一个模式。&3.创建一张测试表----CREATE TABLE test(id integer not null);&4.查看当前数据库的列表: /d; 显示结果是表test属于模式public.也就是test表被默认创建在了public模式中。&5.创建一个新模式kanon,对应于登录用户kanon:CREATE SCHEMA kanon OWNER kanon;&6.再次创建一张test表,这次这张表要指明模式----CREATE TABLE kanon.test (id integer not null);&7.查看当前数据库的列表: /d; 显示结果是表test属于模式kanon.也就是这个test表被创建在了kanon模式中。&& 得出结论是:数据库是被模式(schema)来切分的,一个数据库至少有一个模式,所有数据库内部的对象(object)是被创建于模式的。用户登录到系统,连接到一个数据库后,是通过该数据库的search_path来寻找schema的搜索顺序,可以通过命令SHOW search_path;具体的顺序,也可以通过SET search_path TO 'schema_name'来修改顺序。&& 官方建议是这样的:在管理员创建一个具体数据库后,应该为所有可以连接到该数据库的用户分别创建一个与用户名相同的模式,然后,将search_path设置为"$user",&& 这样,任何当某个用户连接上来后,会默认将查找或者定义的对象都定位到与之同名的模式中。这是一个好的设计架构。
接下来,再来研究下表空间与数据库的关系&&& 数据库创建语句CREATE DATABASE dbname 默认的数据库所有者是当前创建数据库的角色,默认的表空间是系统的默认表空间--pg_default。&&& 为什么是这样的呢?因为在PostgreSQL中,数据的创建是通过克隆数据库模板来实现的,这与SQL SERVER是同样的机制。&&& 由于CREATE DATABASE dbname并没有指明数据库模板,所以系统将默认克隆template1数据库,得到新的数据库dbname。(By default, the new database will be created by cloning the standard system database template1).
&&& 而template1数据库的默认表空间是pg_default,这个表空间是在数据库初始化时创建的,所以所有template1中的对象将被同步克隆到新的数据库中。&&& 相对完整的语法应该是这样的:CREATE DATABASE dbname OWNER kanon TEMPLATE template1 TABLESPACE &&& 下面我们来做个实验验证一下:&1.连接到template1数据库,创建一个表作为标记:CREATE TABLE tbl_flag(id integer not null);向表中插入数据INSERT INTO tbl_flag VALUES (1);&2.创建一个表空间:CREATE TABLESPACE tskanon OWNER kanon LOCATION '/tmp/data/tskanon';在此之前应该确保目录/tmp/data/tskanon存在,并且目录为空。&3.创建一个数据库,指明该数据库的表空间是刚刚创建的tskanon:CREATE DATABASE dbkanon TEMPLATE template1 OWNERE kanon TABLESPACE&4.查看系统中所有数据库的信息:/l;可以发现,dbkanon数据库的表空间是tskanon,拥有者是&5.连接到dbkanon数据库,查看所有表结构:/d;可以发现,在刚创建的数据库中居然有了一个表tbl_flag,查看该表数据,输出结果一行一列,其值为1,说明,该数据库的确是从template1克隆而来。
&仔细分析后,不难得出结论:在PostgreSQL中,表空间是一个目录,里面存储的是它所包含的数据库的各种物理文件。
最后,我们回头来总结一下这张关系网&&& 表空间是一个存储区域,在一个表空间中可以存储多个数据库,尽管PostgreSQL不建议这么做,但我们这么做完全可行。&&& 一个数据库并不知直接存储表结构等对象的,而是在数据库中逻辑创建了至少一个模式,在模式中创建了表等对象,将不同的模式指派该不同的角色,可以实现权限分离,又可以通过授权,实现模式间对象的共享,并且,还有一个特点就是:public模式可以存储大家都需要访问的对象。&&& 这样,我们的网就形成了。可是,既然一个表在创建的时候可以指定表空间,那么,是否可以给一个表指定它所在的数据库表空间之外的表空间呢?&&& 答案是肯定的!这么做完全可以:那这不是违背了表属于模式,而模式属于数据库,数据库最终存在于指定表空间这个网的模型了吗?!&&& 是的,看上去这确实是不合常理的,但这么做又是有它的道理的,而且现实中,我们往往需要这么做:将表的数据存在一个较慢的磁盘上的表空间,而将表的索引存在于一个快速的磁盘上的表空间。&&& 但我们再查看表所属的模式还是没变的,它依然属于指定的模式。所以这并不违反常理。实际上,PostgreSQL并没有限制一张表必须属于某个特定的表空间,我们之所以会这么认为,是因为在关系递进时,偷换了一个概念:模式是逻辑存在的,它不受表空间的限制。
回顾:看文档只是知道一个事实的存在,亲手实验验证这个事实是真实的,思考则能从事实中得出另一个事实。
本文已收录于以下专栏:
相关文章推荐
PostgreSQL中的表空间PostgreSQL中的表空间
表空间概念
表空间使用
表空间概念在PostgreSQL中提供了表空间的概念,在PostgreSQL中表空间实际上就是给表指定一个存储目录...
前天,项目接近收尾,进行了模拟极端情况的测试,JAVA向数据库中写入数据,500条/秒,另一端,JAVA在不停的读,结果,奇迹出现了,写的这一端写入顺畅,读的一端,没有读到最新数据。晴天,暴雷。项目马...
围棋的英文是 the game of Go,标题翻译为:《用深度神经网络和树搜索征服围棋》
PostgreSQL 安装、用户管理、启动关闭、创建删除数据库、
数据库系统实现技术内幕第一次作业数据库系统实现技术内幕第一次作业
题目2.2.1Megatron 777磁盘具有以下特性:
有10个盘面,每个盘面有100000个磁道。
pg中的用户与模式是分开的,不像是oracle中y
弄了好长一段时间,终于顺利地将osm数据导入到postgis中了,在这期间问题百出,现在将整个过程梳理总结一遍,也希望所有人不要再出现我这种低级错误了啊。。。准备工作安装软件:postgreSQL,并...
1.CREATE ROLE创建的用户默认不带LOGIN属性,而CREATE USER创建的用户默认带有LOGIN属性,如下:postgres=# CREATE ROLE pg_test_user_1;...
他的最新文章
讲师:宋宝华
讲师:何宇健
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)}

我要回帖

更多关于 mysql数据库大小限制 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信