Article ID 1572
Article Title ERROR: Cannot retrieve database names
Article URL http://www.dataaccess.com/kbasepublic/kbprint.asp?ArticleID=1572
KBase Category Pervasive.SQL
Date Created 04/16/2002
Last Edit Date 01/13/2004


Article Text
PROBLEM:
The error message " Error: Cannot retrieve database names. You do not have sufficient access rights for the operation." was displayed when trying to create a new database from within PCC. Pervasive advise to change the configuration in BTI.CFG but, even after making the change, the error is still displayed. We are running Pervasive.SQL 2000i (SP4) on a Novell Netware server and Windows 98 Clients.


SOLUTION:

Netware Server
=============
Make sure the BTI.CFG was changed to contain
[Database Names]
DBNamesDirectory=SYS:SYSTEM

as instruction found in Pervasive's Knowledge Base article (see Web Links Related to this Article). The services need to be stopped and started after that change. Also make sure the order you start/stop the services is:
BSTART
MGRSTART
...
MGRSTOP
BSTOP


The name of the NLM of the relational engine (the one used in Pervasive Control Center) is SSQL.NLM. To use PCC, you need to have that service running on the server. To start the relational engine, type MGRSTART at the server; to stop it, MGRSTOP.

Check if the communication between client and server is OK. Use the System Analyzer that comes with Pervasive.SQL to check whether the relational engine can communicate with the server.

If the protocol being used is NOT TCP/IP, the file ODBC.INI must be edited (e.g.: MgrUseTransport=TCP should be changed to MgrUseTransport=SPX) to inform Pervasive which protocol is being used. If the protocol used is IPX/SPX, make sure the SPX.NLM is loaded on the server before starting Pervasive.

One more thing that should be checked: the user trying to create a new database must have authorization (Supervisor rights) on the NDS Server - in case NDS is being used - not only Supervisor rights to the SYS: volume.


Windows Server
==============
At the server, make sure that:

- The user id being used to add the new database is Administrator

- The relational service -- Pervasive.SQL (relational) -- is running. To check that from Control Panel, double-click on Services (or click on Administrative Tools and then double-click on Services) and verify that the Status for that service is "Started"

- No errors are generated when running the Pervasive System Analyzer for the Relational Engine test option. If running Pervasive Control Center from a client (not recommended when tracking down this problem), the Network Communication option should also pass the tests

- The location for the DBNames file is C:\WINNT. You can check that in Pervasive Control Center (PCC) - expand the tree at Configuration | Server | Directories; the value for "DBNames Configuration Location" should be C:\WINNT

- The file DBNames.cfg is in the directory contained in "DBNames Configuration Location" and it is NOT Read Only

- The databases in DBNames are the same as the ones listed in the tree - to check that, in PCC, right-click on Configuration and select "Maintain named database". If they are not, you should follow the steps described in KBase 1751- "HOWTO: Create DBNames.cfg from Pervasive Control Center"  

- The DSNs were created with UNC path

- After checking all the above, if the relational service is running under System Account (on NT, select the service name, click on "Start up" and read the "Log On As" section; on Windows 2000, from the Properties of the service, read the Log On tab), test changing that account to a user with full rights to Pervasive and the needed directories (e.g. Administrator)



INFORMATION FROM PERVASIVE.SQL

ID: psql3430
Cannot create database name. You do not have sufficient access rights

Creating a database through the Create Database Wizard in the Pervasive Control Center errors with the message:
Create Database Wizard
Cannot create database name.  You do not have
sufficient access rights for the operation or the
destination directory does not exist.

Problem Environment:
Pervasive.SQL 2000
Novell NetWare
Microsoft Windows 2000/ 9x

Cause of this problem:
The ODBC database has ODBC security enabled.  Check for the presence of RIGHTS.DDF.

Solution:    
Create the database using the Microsoft 32-bit ODBC Administrator.

Launch the Microsoft 32-bit ODBC Administrator.
Select the System DSN tab.
Click Add and select the Pervasive ODBC Engine Interface.
Click Finish.
Type in a Datasource name.
Click Create at the bottom.
Type in a Database name and then browse to the dictionary (DDF) and data files for the locations.
Leave the check boxes at default and hit OK to finish.
Be sure to refresh the view in the Control Center to see the new database listed.

--------------------
ID: psql2222
Insufficient Access Rights error creating a new Database in PCC

Error: Cannot retrieve database names.  You do not have sufficient access rights for the operation.

Problem Environment:
Pervasive.SQL 2000i NetWare/ Windows NT/ WG
Novell NetWare
Microsoft Windows NT/ 2000/ 9x

Cause of this problem:
The DBNames location doesn't exist or is not specified

The DBNames location may have been changed by importing a registry key on a Windows system, by changing the location in the Pervasive Configuration Utility or the location may not exist in the BTI.CFG on a NetWare server.

Solution:    
For Microsoft Windows Systems:
1. In the Pervasive Control Center under Pervasive.SQL 2000i Servers, expand the local server name.
2. Expand Configuration
3. Expand Server
4. Select the Directories folder
5. Double Click the DBNames Configuration Location setting
6. Change the location to valid directory (for WinNT/2000 systems, usually the C:\WinNT directory.  For Win9X/ME/XP systems, usually the C:\Windows
     directory.)  

For Novell NetWare:
Edit the BTI.CFG file in sys:system directory.
(This change can not be done through PCC; it must be done by editing the BTI.CFG file manually.)
At the beginning of the BTI.CFG file add the lines:

[Database Names]
DBNamesDirectory=SYS:SYSTEM

Save Changes then stop and restart the Pervasive Engines.

--------------------
ID: psql2051
"Cannot create database name.  You do not have sufficient access rights for the operation or the destination directory does not exist." message is returned when trying to create an Engine DSN on NetWare.

Problem Environment:
Pervasive.SQL 2000 for NetWare

Cause of this problem:
Having the dbnames.cfg file flagged read only can generate this message.

Solution:    
Flag the dbnames.cfg file in the sys:\system directory to read/ write.

--------------------
ID: psql4782
Unable to create a remote Engine DSN to an NT server

Creating a new database or engine DSN to a remote NT or Windows 2000 server returns "Can't create a database name. You don't have access right for the operation or destination directory doesn't exist."

Problem Environment:
Pervasive.SQL 2000 Windows NT
Microsoft Windows NT
Microsoft Windows 2000

Cause of this problem:
This operation on NT doesn't automatically replace the mapped drive letter with the UNC path

Solution:    
Replace the mapped drive letter in the Directory location or DDF and data files location with a UNC path such as \\servername\share\directorypath.

--------------------
The 32-bit Relational Access Check in InstallScout fails during the Pervasive.SQL 2000 client installation in a server loaded with the SPX protocol.

32-bit Relational Access Check in InstallScout, SPX, and Pervasive.SQL 2000

Problem Environment:
Pervasive.SQL 2000 Windows NT/ Netware

TCP/IP is the default communication protocol for the Pervasive.SQL 2000 Sequel Relational Database Engine (SRDE).

Solution:    
Change the default TCP/IP communication protocol to SPX for InstallScout to run successfully.

Note: For a NetWare server, change MgrUseTransport to SPX in the System/ODBC.ini file on the server. Then restart the SRDE. Also, if you try to access the database or create a database from a remote machine without changing the protocol, the system freezes.



Contributed By:
Marcia Booth
Company: Data Access Worldwide
Web Site: http://www.dataaccess.com

Links Related to this Article
DAW Knowledge Base article 1751: HOWTO: Create DBNames.cfg from Pervasive Control Center
DAW Knowledge Base article 1752: ERROR: Creating database with parameters you described was rejected!
Pervasive.SQL Support Page

Email this Article
Email this Article to a Colleague
Send Feedback on this Article to Data Access Worldwide
Copyright ©2024 Data Access Corporation. All rights reserved.

The information provided in the Data Access Technical Knowledge Base is provided "as is" without warranty of any kind. Data Access Corporation disclaims all warranties, either express or implied, including the warranties of merchantability and fitness for a particular purpose. In no event shall Data Access Corporation or its suppliers be liable for any damages whatsoever including direct, indirect, incidental, consequential, loss of business profits or special damages, even if Data Access Corporation or its suppliers have been advised of the possibility of such damages. Some states do not allow the exclusion or limitation of liability for consequential or incidental damages so the foregoing limitation may not apply.