Thread: error log, tablespace, wal files
Hello,
1) what is tablespace in postgres?
2) one more issue is that, I try to rename or delete some file in /opt/PostgresPlus/9.0/data/base/16428/ directory. when I restart postgres server, it start normally. but I thing this is wrong. I rename or delete file into above directory, that means my database(having 16428 oid) is corrupted. So How can my postgres server is started normally?? I want to see the log file for that database corruption. Can I see it?? and where???
and please explain me that what's going on in above case??????
3) I want know about pg_xlog(wal) file creation. That means, size of wal files and how to create that files and time stamp between creation of two different wal files, that means when one file is created on 11:53AM, so how much time after the second file is created?? can we set that time stamp???
Please any one explain me above points.
Regards,
Karuna karpe.
1) what is tablespace in postgres?
2) one more issue is that, I try to rename or delete some file in /opt/PostgresPlus/9.0/data/base/16428/ directory. when I restart postgres server, it start normally. but I thing this is wrong. I rename or delete file into above directory, that means my database(having 16428 oid) is corrupted. So How can my postgres server is started normally?? I want to see the log file for that database corruption. Can I see it?? and where???
and please explain me that what's going on in above case??????
3) I want know about pg_xlog(wal) file creation. That means, size of wal files and how to create that files and time stamp between creation of two different wal files, that means when one file is created on 11:53AM, so how much time after the second file is created?? can we set that time stamp???
Please any one explain me above points.
Regards,
Karuna karpe.
> Hello, > > 1) what is tablespace in postgres? > > 2) one more issue is that, I try to rename or delete some file in > /opt/PostgresPlus/9.0/data/base/16428/ directory. when I restart postgres > server, it start normally. but I thing this is wrong. I rename or delete > file into above directory, that means my database(having 16428 oid) is > corrupted. So How can my postgres server is started normally?? I want to > see the log file for that database corruption. Can I see it?? and where??? > and please explain me that what's going on in above case?????? > > 3) I want know about pg_xlog(wal) file creation. That means, size of > wal files and how to create that files and time stamp between creation of > two different wal files, that means when one file is created on 11:53AM, so > how much time after the second file is created?? can we set that time > stamp??? There are people here better qualified to answer this, but I'll take a shot anyways. 1) tablespaces allow you to physically store tables in different directories (meaning different disks). So if you have a table that contains gazillions of records and needs a lot of space, you could add a disk for that, mount it to some directory on your server and create a tablespace on the disk. Then you'd tell postgresql to store the large table(s) in that tablespace. 2) I think - and I certainly may be wrong here - that you will encounter the error only when postgresql tries to access data that should be in those files. It's kind of like misplacing your car keys - you'll only notice when you need them. 3) This depends a lot on your settings in postgresql.conf. To my understanding WAL files are majorly depending on the amount of data written to them and not based on a time period. If your database does mostly reads, no WAL log will be needed, thus the files allocated don't fill up quickly. If you have a lot of write operations, the files will fill quickly and once full the next file (up to number of WAL files configured) will be created. This one I'm even more fuzzy on than #2 - so someone here with more knowledge of the internals may set me right.
On Thu, Nov 10, 2011 at 12:36 AM, Uwe Schroeder <uwe@oss4u.com> wrote: > > >> Hello, >> >> 1) what is tablespace in postgres? >> >> 2) one more issue is that, I try to rename or delete some file in >> /opt/PostgresPlus/9.0/data/base/16428/ directory. when I restart postgres >> server, it start normally. but I thing this is wrong. I rename or delete >> file into above directory, that means my database(having 16428 oid) is >> corrupted. So How can my postgres server is started normally?? I want to >> see the log file for that database corruption. Can I see it?? and where??? >> and please explain me that what's going on in above case?????? Any idea what was in that? Have you tried truncating the table that was behind it? Assuming it was a table.
On 11/10/2011 02:29 PM, Karuna Karpe wrote: > 1) what is tablespace in postgres? It's a way of putting some tables, indexes, etc into a different part of your system's storage. Sometimes you want to do this to put a really big table on slower, cheaper storage. Sometimes you might want to put indexes on really fast but expensive or small and limited storage. It's also useful for splitting up tables that're often accessed concurrently so they're on different disk arrays and don't compete with each other for I/O. There are lots of uses. > 2) one more issue is that, I try to rename or delete some file in > /opt/PostgresPlus/9.0/data/base/16428/ directory. Don't do that! Do not mess with anything in the PostgreSQL data directory unless you know *EXACTLY* what you are doing. > when I restart > postgres server, it start normally. but I thing this is wrong. I > rename or delete file into above directory, that means my > database(having 16428 oid) is corrupted. So How can my postgres server > is started normally?? Because it hasn't needed to access that file yet. When it does, it'll report errors for attempts to access that file but will otherwise continue to function normally. PostgreSQL doesn't try to verify the whole database on startup. Imagine how long that'd take! > I want to see the log file for that database > corruption. Can I see it?? and where??? > and please explain me that what's going on in above case?????? You need to figure out what you deleted by looking in pg_catalog, then attempt to access it. It'd be nice if there were a built-in tool or utility to verify a database catalog against the on-disk contents, but it's never supposed to be necessary. The need only arises when someone does something silly or when a file system goes bad - and in the latter case, who says it's the catalog that's correct? -- Craig Ringer
Thanks to all for giving solution.
On Fri, Nov 11, 2011 at 8:24 AM, Craig Ringer <ringerc@ringerc.id.au> wrote:
On 11/10/2011 02:29 PM, Karuna Karpe wrote:It's a way of putting some tables, indexes, etc into a different part of your system's storage. Sometimes you want to do this to put a really big table on slower, cheaper storage. Sometimes you might want to put indexes on really fast but expensive or small and limited storage. It's also useful for splitting up tables that're often accessed concurrently so they're on different disk arrays and don't compete with each other for I/O. There are lots of uses.1) what is tablespace in postgres?Don't do that!2) one more issue is that, I try to rename or delete some file in
/opt/PostgresPlus/9.0/data/base/16428/ directory.
Do not mess with anything in the PostgreSQL data directory unless you know *EXACTLY* what you are doing.Because it hasn't needed to access that file yet. When it does, it'll report errors for attempts to access that file but will otherwise continue to function normally.when I restart
postgres server, it start normally. but I thing this is wrong. I
rename or delete file into above directory, that means my
database(having 16428 oid) is corrupted. So How can my postgres server
is started normally??
PostgreSQL doesn't try to verify the whole database on startup. Imagine how long that'd take!You need to figure out what you deleted by looking in pg_catalog, then attempt to access it.I want to see the log file for that database
corruption. Can I see it?? and where???
and please explain me that what's going on in above case??????
It'd be nice if there were a built-in tool or utility to verify a database catalog against the on-disk contents, but it's never supposed to be necessary. The need only arises when someone does something silly or when a file system goes bad - and in the latter case, who says it's the catalog that's correct?
--
Craig Ringer