Solved

Cannot start

Posted on 1998-04-21
10
514 Views
Last Modified: 2012-06-21
NtServer 40
I use MSQL 6,5 for learning purposes
after installing software (IIS, ASP and I do not remember what) I was unable to start my SQLServer
Getting Err 2140  "Internal NT error occurred"
Messages from MSQL errorlog
kernel   initblkmem: not enough memory for MEMMAP structures
kernel   initdata: suballocation for buffer pages failed (121032704 bytes requested)
I have 32 RAM  and 2G space
Any help appreciated
Matt
mativare@i-2000.com
0
Comment
Question by:mativare
10 Comments
 
LVL 2

Expert Comment

by:jbiswas
ID: 1088820
Try rebooting the machine and trying to start server. If this fails go to your taskmanager and see what processes are running and how much memory is being taken up. See if you can close down some processes. If none can be closed, increase virtual memory. I don't know what you've set your paging file size as...so try increasing it by 50Mb from it's present size. If you still have problems starting the server then you might have done a faulty installation of the IIS/ASP. They really should not clash, but who knows what windows dll's gets overwritten.
0
 
LVL 1

Author Comment

by:mativare
ID: 1088821
Virtual memory 105 Now, still server cannot start
If I reinstall can I reach to my stored procedures and table definitions , in case data not backed up
0
 
LVL 2

Expert Comment

by:jbiswas
ID: 1088822
Once you reinstall MS SQL Server you cannot access any of the objects you created in the previous server(unless you have a backup and you create a database on the new server with the same device mapping in sysusages). You will have to create  all your objects again otherwise.

Did you see your task manager to see how much memory is free. Also look at your server config file how much memory you have allocated for the server. Did someone accidentally configure too much memory? If none else works, try starting the server in diag mode. Here's what you do,
Open a command prompt and attempt to start SQL Server as an executable program in minimal configuration rather than as a service. To do this, run the following command from a command prompt on the server

sqlservr /d <drive>\<default SQL Server directory>\data\master.dat /e <drive>\<default SQL Server directory>\log\errorlog -f

where <default SQL directory> is the directory you installed SQL Server in.

For more information about starting SQL Server, see the SQL Server Books Online "Starting SQL Server with Minimal Configuration" topic.

Review the error log or view the screen by scrolling back to check for any errors. The last line displayed should read "Launched startup procedure 'sp_sqlregister'." Leave the screen as it is and start ISQL/w to connect to the server. At the query prompt in ISQL/w, type:

sp_configure



This will return all of the configuration information for SQL Server. The config_value contains the values normally used by SQL Server, the run_value lists the minimum settings invoked if you used the -f option when you started SQL Server from the command line.

Check the config_value column for entries that may not be reasonable for your hardware. A common mistake is setting the memory value to high. This value is the number of 2K pages that SQL Server will use to operate. Therefore a value of 8,196 is 16 MB of RAM. The value for tempdb in RAM is entered as number of megabytes to use; an entry of 20 will create a 20 MB tempdb in RAM. The combined total of these two values, in addition to the amount of RAM that Windows NT requires, should not exceed the total amount of RAM installed in the system.

If this still doesn't work , you might have to do some recovery with trace flags, so that you can atleast bring the server back up with just the master database.
0
 
LVL 1

Author Comment

by:mativare
ID: 1088823
Virtual Memory 105
0
 
LVL 2

Expert Comment

by:jbiswas
ID: 1088824
Did you try starting the server with the minimal configuration? What happened?
0
Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

 
LVL 1

Author Comment

by:mativare
ID: 1088825
Thanks
Memory management was sour indeed
MSSQL is up and running now
0
 
LVL 1

Author Comment

by:mativare
ID: 1088826
Please mark question as answered, grade excellent
I cannot do it regularly, because getting error message
Thanks a million
0
 
LVL 1

Expert Comment

by:kuk010998
ID: 1088827
PS: One CAN reinstall SQL Server and use previous databases - copy away the master.dat and give it to the fresh SQL server afterwards. Caveat: As the master.dat contains info on all the other db´s, all active databases should stay in the same drives/directories. The master.dat itself can move. Of course this would not have helped much in your case as the bad memory allocation value is stored in the same master.dat...

0
 
LVL 1

Author Comment

by:mativare
ID: 1088828
Nice.
Did I read you
1.First I copy master. dat then I deinstall(writing down directory names first) 2.reinstall , keeping directory structure same as before
and then  coping master dat in.
Thanks kuk .
Matt
0
 

Accepted Solution

by:
jayaramhh earned 50 total points
ID: 1088829
In your server the problem may be with some of the following configuration options.

1. The "memory" parameter might set too high
 
2. The "tempdb in RAM" parameter might set too high

Follow the steps below to start up the SQL Server and modify the
sp_configure parameters so that the MSSQLServer service will be able to start:
 
1. From a command prompt on the server, run the following command:
 
      sqlservr -c -f
 
   This will start the server in single-user and minimally configured modes. It will also skip the execution of startup stored procedures.
   When the last line on the screen reads "Warning: override, autoexec procedures skipped", leave the screen as it is and use ISQL/w to connect to the server.
 
2. In ISQL/w, use sp_configure to change the "memory" or "tempdb in RAM" settings. For example, issue a command similar to the following:
 
      Sp_configure memory, 8192
      Go
      Sp_configure tempdb, 0
      Go
 
3. Run the RECONFIGURE command to install, as in the following example:
 
      Reconfigure with override
      Go
 
4. Execute the SHUTDOWN command.
 
5. Start the MSSQLServer service; it should succeed.
 

0

Featured Post

What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

I wrote this interesting script that really help me find jobs or procedures when working in a huge environment. I could I have written it as a Procedure but then I would have to have it on each machine or have a link to a server-related search that …
Ever wondered why sometimes your SQL Server is slow or unresponsive with connections spiking up but by the time you go in, all is well? The following article will show you how to install and configure a SQL job that will send you email alerts includ…
Familiarize people with the process of utilizing SQL Server functions from within Microsoft Access. Microsoft Access is a very powerful client/server development tool. One of the SQL Server objects that you can interact with from within Microsoft Ac…
This video shows, step by step, how to configure Oracle Heterogeneous Services via the Generic Gateway Agent in order to make a connection from an Oracle session and access a remote SQL Server database table.

743 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now