I have a database which is quickly filling up its allotted data space (the database is 500MB, and the device is also 500MB). I wanted to know whether it was an acceptable procedure to:
-Dump the database
-Create a new 600MB (or more) device
-Create a 600MB database for load on that device
-Restore the dump to it.
Are there data integrity/corruption/fragmenting issues with this method? The alternatives are simply expanding the database across another device (or on the same device using DISK RESIZE), or using scripts and bcp to recreate the database from scratch. These do not seem ideal. Any opinions or comments would be greatly appreciated.
We are looking into sql 7.0 and would like to know how it handles excessively sized databases. If we restore a 6.5 database into a db on 7.0 will it automatically resize to free up disk space or will it only work for new databases which have install scripts run on it.
Hi all, hope someone can give me some guidence on this.
We have a database on SQL 6.5 sp5a that is 25GB in size. The transaction log is 10GB in size. We do transaction log dumps every hour throughout the day. On a very heavy day the transaction log backup device will be just over 2GB in size. Around 8GB wasted because no-one knew how much space would be used.
Is there an easy way to resize the transaction log so we can reclaim some space. I was thinking of creating a new smaller database device, then using sp_logdevice to use the smaller device as the log and get rid of the 10GB device.
My transaction log has grown to 2 Gig. But when I do a truncate transaction log. It is only 18Mb. How can I resize the physical disk space of the transaction log. I want it only to be 100 Mb. It is just wasting the disk space. Please help!
Here's my question, hopefully one of you can help me:
When you allow your log file to grow on its own, eventually it uses up all your diskspace . . so you truncate it. However, when you truncate it, it doesn't *resize* the log file, so your still out of disk space, it simply clears up room within the allocated "block" or what-not so that the db can continue to make log file entries. So, does anyone know of a way to resize that log file without losing it's data? For example, we were thinking about truncating it, backing it up, dropping the original, and then restore the log file from the "truncated backup." Anyways, there must be an easier solution (if that one even works!) . . so please, if you have any hints, let me know.
Have a SQL2008R2 instance on a VM where the single .mdf for the tempDb database is located on a high contention disk. Â I've managed to get another 60GB disk and thought it would be a good time to move the .mdf and also increase it's size and number of files.Â
The server has 12 cores and after a bit of reading I've decided that it would be best just to have four files for this database as the 1 file per core (-1) seems to be disputed. Â
-- Move the existing file to the new disk and rename it. ALTER DATABASE tempdb MODIFY FILE (NAME='tempdev', FILENAME='E:SQLData empdb0.mdf');
-- Change the size to 1GB ALTER DATABASE tempdb MODIFY FILE (NAME='tempdev', SIZE= 1048576KB, FILEGROWTH=5%);
-- Add three new files, all with the same size & growth ALTER DATABASE [tempdb] ADD FILE ( NAME = N'tempdev1', FILENAME = N'E:SQLData empdb1.mdf' , SIZE = 1048576KB , FILEGROWTH = 5%) ALTER DATABASE [tempdb] ADD FILE ( NAME = N'tempdev2', FILENAME = N'E:SQLData empdb2.mdf' , SIZE = 1048576KB , FILEGROWTH = 5%) ALTER DATABASE [tempdb] ADD FILE ( NAME = N'tempdev3', FILENAME = N'E:SQLData empdb3.mdf' , SIZE = 1048576KB , FILEGROWTH = 5%)
-- Now restart the instance. Â Also, what are peoples thoughts on percentage growth for tempDb? Â I've read that it's not recommend and yet it seems to be the norm.
I want to control the size of ldf files and mdf files of several databases on SQL Server 2008 in my organization (manual increase), but i have a question:
What would be the best practices (best methods) for provisioning a ldf file and mdf file? Exists any generic formula?
With this i want to avoid the shrink operation and the autogrow of sql server databases...
We replicate a SQL2000 database (DataBaseA) to a SQL2000 database (DataBaseB) by using the Restore function and hasn't change its logical name but only the physical data path and file name. It is running fine for a year. We use the same way to migrate the DataBaseB to a new SQL2005 server with the Restore function and the daily operation is running perfect. However, when we do the Backup of DatabaseB in the SQL2005, it just prompt the error message
System.Data.SqlClient.SqlError: The backup of full-text catalog 'DataBaseA' is not permitted because it is not online. Check errorlog file for the reason that full-text catalog became offline and bring it online. Or BACKUP can be performed by using the FILEGROUP or FILE clauses to restrict the selection to include only online data. (Microsoft.SqlServer.Smo)
Please note we left the DataBaseA in the old SQL2000 server.
Please help on how we can delete the Full-text catalog from DatabaseB so we can do a backup
We have a vendor created database with 9000+ tables, one of which has about 6 billion rows. Â The vendor redesigned the database recently and ever since we've had terrible performance.
What the vendor did was increase any and all varchar columns (tens of thousands of columns) to 256.
Before the upgrade we had no problems creating an index on the 6billion row table, it would take 2 hours.
Now after the upgrade we've let the index creation command run for 5 days and killed it because it was consuming terabytes of logspace.
The previous design had combined column width of 1049 to what is now over 4000. The primary key itself is 1283 characters (SQL limit is 900).
There is no additional data, just wider columns. Why we are unable to create the index?
What is happening inside SQL Server? Does SQL make "room" in memory for the index for the entire width of the potential max row length?
//========================= end code =======================
I succeded making room for _vCAttStats vector, but when I tried providing room for the vectors of the vector I got an Assertion failed error (file dmhallocator.h Line:56 Expression assert(_dmhalloc._spidmmemoryallocator != NULL)). Please, see the code below, included in NAVIGATOR::GetNodeArrayProperty function:
//========================= begin code =======================
I have a report that (for purposes of this example) displays States and the Cities in a state.
Now the State is the first group which I want to drill down into by expanding and then show the Cities as the detail line.
What I would expect to happen (and what does happen if I use the wizard instead of creating the report manually) is that I would click on a State and then the page would expand to make room for all the cities listed below.
(That is to say if I am showing only states, not expanded, then all 50 states fit on a single page. Then if I expand California all the states below that shift onto other pages to make room for the 400+ cities in California)
However, what happens is that when I preview the report instead of being 1 page long it is many pages in length with empty white space between the States (white space that would be occupied by the cities if I were to expand the state).
Can someone tell me what setting I need to adjust to get the report to dynamically resize when I expand/collapse groups?
We are running SQL 6.5 & SMS 1.2 in the same server. And we're having problem with the SQL server that error log 1105 appreared. SQL inidicated msdb and tempdb log size were full. I used dump trans with no_log but ISQL response: " This command did not return data, and it did not return any rows". Then we recovered the SMS data space available is 0 mb. I expanded the SMS database but the data space still shown 0 mb. Restart and reboot did not helped. I used DBCC Checkdb but it did not show any error. Please any advice or suggestion are appreciate!
System.Data.SqlClient.SqlException: The transaction log for database 'mydatabase' is full. To find out why space in the log cannot be reused, see the log_reuse_wait_desc column in sys.databases I have my website on a web hotel and I only have limited access to my database. How can I solve this for now, and the future??
I have two databases, Database1 and Database2 both have same set of tables.
Database1 has a saperate Log file, i.e. it uses different Device for its Logs.
There are two processes running using this database, Process 1 will keep on dumping records in to database1. Here it uses Rollback and commit operations.
Process2 will take a backup of Database1 after every minute to Datavase2.
What is hapening is, after some time later, if i check the Space availabe for data then Database1 will have used 5 to 10 times more space that database2.
Can any body tell me why this is hapening. because for the same data both databases uses different size of space.
Hi, I´m working with a sql server 2000 bd and i have a bd with simple recovery model. Each day i have the next error:
"The log file for database x is full. Backup the transaction log for the database to free up some log space"
I tried to limit the transaction log file to 500Mb but then I have this error. I have done the reduction manually of transaction log file but the next day i have got the same error. If i don´t try to limit, this file grows a lot of (1GB) and then i haven´t got enough disk space. Can you help me, please?
Question 13 GHZ CPU (Intel pentium 4) single cpu + 2 GB Memory + SCSI HDDDatabase size 10 GB - How long will full database backup take if thebackup is writing a file to the hard disk (separate hard disk)Question 2during this full backup are users and application able to access thedatabasefor examplea) select recordsb) insert , update, delete recordsor is the database backup causing the database to be exclusivelylocked up ?Thanks in advance
Hi,I would like to have a full-text search from a sql server database in my aspx page. I have tried to do it by creating a Dataset with a DataTable where there is a query like: SELECT title, yearFROM ProjectsWHERE title like N'%@Search%' Problem is with the like operator - the visual studio does not reconize the @Search as a parameter, as it reconnizes it in the query below (which works fine by the way): SELECT Projects.*, theme AS Expr1FROM ProjectsWHERE (theme = @theme) Can anybody help me how to deal with this problem, which is the best way to have a full text search? Cheers, ArtoV
I'm looking for advise on how to set up or create an alert that will monitor database free space. I need to receive an alert if a database becames 85% full. I need to implement this ASAP. The servers I work with are on version 7.0. I was just wondering if there is any system stored procedure or alert as such.
I am receiving the below message however when going into my database properties and going into 'File' it's set as either unrestricted growth for the log files or 2097152MB limit and the log files are only taking up about 3gigs.
Could not allocate new page for database. There are no more pages available in the file group.
Database log file is full. Back up the transaction log for the database to free up some log space.
Could not allocate space for ojbect in database because the filegroup is full.
there is a sql job that failed yesterday. This job calls a store procedure. This store procedure doesn't use any temp table. But there are lots of updates and inserts clauses.
application log shows: Error: 9002, Severity: 17, State: 2 The log file for database 'tempdb' is full. Back up the transaction log for the database to free up some log space. ---------------------------------------------------------------- tempdb.mdf 1.37gb templog.ldf 19.6 mb
these files are located on D: drive and D drive has 52gb free space
I inherited an application (or two) that run on SQL Server 6.5, which Ihaven't used in years, and am having a problem. I get the error:------------------------------------------------------------------------Can't allocate space for object 'Syslogs' in database 'master' becausethe 'logsegment' segment is full. If you ran out of space in Syslogs,dump the transaction log. Otherwise, use ALTER DATABASE orsp_extendsegment to increase the size of the segment.------------------------------------------------------------------------....when I... well... just about everything. If I try:DUMP TRAN master WITH NO_LOG....I get:------------------------------------------------------------------------Can't allocate space for object 'Syslogs' in database 'master' becausethe 'logsegment' segment is full. If you ran out of space in Syslogs,dump the transaction log. Otherwise, use ALTER DATABASE orsp_extendsegment to increase the size of the segment.Unable to write CHECKPOINT record in database 1 because the log is outof space.Unable to continue logged version of DUMP TRANsaction. Please free upsome space in database 1 or use the NO_LOG option.------------------------------------------------------------------------....If I try to expand the device or database, I get the "Can't allocatespace..." error. If I use "DBCC UPDATEUSAGE(0)" I get nothing, "DBCCCHECKTABLE(syslogs)" tells me it's using one page and has 29 rows(which is what I get if I "SELECT * FROM syslogs").How can I expand the space available to the master database orotherwise resolve this problem?Thanks in advance for any help anyone can offer. I know there probablyaren't many of you still using 6.5.Regards,Brian
HiI am getting this common error once or twice a day:Error: 9002, Severity: 17, State: 2The log file for database 'tempdb' is full. Back up the transactionlog for the database to free up some log space.provided......1. My log file drive has more than 20 GB free out of 30 GB2. Both data file & log file has default setting on unrestricted filegrowth by 10%3. Currently we moved from SQL 7.0 to SQL 2000 & the load in the userside also doubled4. We can't do the temporary solution like restarting the server orSQL service, because the application is a real time system with muchless manual interaction.Thanks in advance.RegardsSeni
hi,my sql database log file has been fulled recently ..... becuasethere are 55 millions records in main 3 tables .... so how i can emptylog file ...i don't want to attach new log file or save any pervious log info.....thanks for helping me ... and my company ..Abdul SalamSr. DBA + ProgrammerXebec Groups of Business.
I always get this message, when i want to run a stonger query or a transaction that takes a longer time:
"The transaction log for database 'tempdb' is full. To find out why space in the log cannot be reused, see the log_reuse_wait_desc column in sys.databases"
I checked the log_reuse_wait_desc column: LOG_BACKUP I ran tr log backup...nothing... I tried to set to simple reco mode the db...this helped... temporaly...i got again below message. ( i wouldn't like to set to simple mode the db because the size of db is 160GB now....so i don't want to eun a fullbackup)
TempDB size is 50MB now and it can grow until 7GB. The trqansaction log size is 14GB and there are 50GB free space, so it can grow.
This symptom occurs since i installed SP2 and the CP Rev.4.0
I have a following problem. I have installed the Microsoft Search Service. It is visible in the Service Manager and is shown as running. The platform is a Windows XP professional machine running SQL Server 2000 developer. I am using the service off the local host. I can not enable the Full-Text search on the database as that field is grayed out in the tools menu. Having read the KB article 270671 I tried to use the stored procedure sp_fulltext_database 'enable' to achieve the desired result, but recieved an error 7609 Full-Text Search is not installed, or a full-text component cannot be loaded. At least according to the Service Manager the Microsoft Search service is up and running. Any ideas as to what is causing this. Thanks a lot.
After I restore a database with SQL the database I cannot access it. However, after restoring using Enterprise Manager I do not have the same problem. The message I get is:
Database 'les_test' cannot be opened. It is in the middle of a restore.
The code I am trying to use for the restore is:
RESTORE DATABASE les_test FROM DISK = 'c:MSSQL7BACKUPiztrobeta_db_200012011201.BAK' WITH NORECOVERY, REPLACE, MOVE 'biztrobeta_PRI' TO 'c:mssql7DATAiztrobeta_PRI.ndf', MOVE 'biztrobeta_FGE_Dat1' TO 'c:mssql7DATAiztrobeta_FGE_Dat1.ndf', MOVE 'biztrobeta_FGX_Idx1 ' TO 'c:mssql7DATAiztrobeta_FGX_Idx1.ndf', MOVE 'biztrobeta_LOG' TO 'c:mssql7Dataiztrobeta_LOG.ldf' GO
I tried changing the status in the master..sysdatabases tables, but the restored database was still not accessible. I tried to do this using the following statment:
UPDATE sysdatabases SET STATUS = 4194316 WHERE name = 'les_test' GO
I am new to Microsoft SQL and have been dumped right into the deep end with an anchor around my ankles.
The problem I am experiencing is about 6 months back a guy setup a Microsoft SQL server at my client. He then took his bags and left. Then a developer developed an application which uses a database on this sql server. Everything worked well for around 4 months.
Yesterday IBM Director notified me that I am running dangerously low on disk space on the server. By the time I came in to work this morning I had 12mb free disk space. The evil thing here is the transaction log for the downtime database. It has grown to over 60gb, all because the correct measures were not implemented to prevent this.
The problem that is occuring is no one can do anything on the database now due to the lack of free space. I have tried reading the sql books online but due to my lack of sql experience and knowledge I am stuck.
Can someone please help me? What I would like to do is pull my transaction log down to an acceptable size.
I was thinking of creating a new database and then importing all the data from the current database and then just deleting the current database however am slightly concerned that this may result in some data being lost.
I am receiving the below message however when going into my database properties and going into 'File' it's set as either unrestricted growth for the log files or 2097152MB limit and the log files are only taking up about 3gigs.
Could not allocate new page for database. There are no more pages available in the file group.
Database log file is full. Back up the transaction log for the database to free up some log space.
Could not allocate space for ojbect in database because the filegroup is full.