Missing Data... Need to know what data...

BDMcGrew

ADSM.ORG Member
Joined
Mar 9, 2015
Messages
74
Reaction score
1
Points
0
Good morning all! I'm in a predicament that I could use some help on. I was in this spot a many years ago and someone on this forum helped me figure it out - at least I think it was this forum; but I can't find it.

I've got this 6.3.3.0 server running in Win2K8R2 using 500TB of replicated NAS for storage of BFS backup data files. About 15,000 BFS volumes worth of data and I need to restore from a major system wide crash.

During the restore I've found there are roughly 200 BFS volumes missing from disk. This is a SAN replicaiton problem, not a TSM problem, but it's my problem.

I've identified the missing volumes and marked them as destroy but I need to go a step further and this is where I got help here last time, I just don't remember who or how...

1) I want to query the database directly and find out what files/filesets were on these volumes.
2) Then based on that information I want to search the database of existing remaining volumes to find the last versions of the missing files so I can do a point-in-time restore.

I know it's not exactly an easy task but I've done it before so I know it can be done... I'd appreciate any assistance anyone can offer!

Thanks,

-brian

Oh, and btw, I didn't architect the system - so don't judge :)
 
Code:
select node_name,filespace_name,copy_type,stgpool_name from volumeusage where volume_name='<VOLUME_NAME_IN_CAPS_AND_COMPLETE_PATH_FOR_DEVCLASS_FILE>'
 
Awesome, that's a huge step in the right direction! Now, how can I see what files are actually backed up within those filespaces on those volumes?
 
Awesome, that's a huge step in the right direction! Now, how can I see what files are actually backed up within those filespaces on those volumes?

WARNING: The query process may take a long time and may even crash the TSM instance

Code:
select node_name,filespace_name,file_name,type from contents where node_name='<NODE_NAME>' and volume_name='<VOLUME_NAME>' and filespace_name='<FILESPACE_NAME>'

The entries for node, volume and filespace names comes from the earlier SELECT query I sent.
 
Last edited:
You can combine the 2 select statements like:

Code:
select vu.node_name,vu.filespace_name,con.file_name,vu.copy_type from volumeusage as vu,contents as con where (vu.node_name=con.node_name) and (vu.filespace_name=con.filespace_name) and (vu.volume_name=con.volume_name) and vu.volume_name='<VOLUME_NAME_IN_CAPS_AND_COMPLETE_PATH_FOR_DEVCLASS_FILE>' order by vu.volume_name,vu.filespace_name,con.file_name

to create listing supplying only the volume name

another approach is to run the SELECT statement using STATUS as pivot to generate the file names

Code:
select vu.node_name,vu.filespace_name,con.file_name,vu.copy_type from volumeusage as vu,contents as con,volumes as vol where (vu.node_name=con.node_name) and  (vu.filespace_name=con.filespace_name) and (vu.volume_name=con.volume_name) and (vu.volume_name=vol.volume_name) and vol.status='DESTROYED' order by vu.volume_name,vu.filespace_name,con.file_name >> file_name.txt
 
Last edited:
Back
Top