On our production server, I linked to an unsecured Access 2003 mdb file which worked nicely for a few days.
EXEC sp_addlinkedserver 'NUWDB', 'Jet 4.0', 'Microsoft.Jet.OLEDB.4.0', 'f:\sqldata\nuwdb\nuwbe.mdb' EXEC sp_addlinkedsrvlogin 'NUWDB', FALSE, NULL, 'Admin', ''
Nothing has been touched on the production server but last night I started getting an error when attempting any jet data access. The error occurs not just for the mdb file in question but any jet links including xls files and brand new mdb files. This error has frightenly persisted a reboot and service restart. The error is;
OLE DB provider "Microsoft.Jet.OLEDB.4.0" for linked server "nuwdb" returned message "Unspecified error". Msg 7303, Level 16, State 1, Line 1 Cannot initialize the data source object of OLE DB provider "Microsoft.Jet.OLEDB.4.0" for linked server "nuwdb".
Service restart didn't fix it, reboot didn't fix it and recreating the link didn't fix it. The link to the mdb file works on our development server without issue. There is nothing in the SQL error log or windows event logs.
This isn't the first time it has happened and we managed to work around it without using linked-servers in the past but this time working around it isn't an option.
Hours of googling suggested setting "memory to reserve" so I add -g512 to the SQL service startup parameters, restarted and bingo, she works again. However, it is still working after removing this option. I'm thinking -g512 was unrelated and I've got an intermittent problem that's out of my control.
Does any know how to read dbcc memorystatus so I can confirm or deny a memory problem? Does anyone have any other clues about what is going on?