Local Access To Replication Logs (was Does Anyone Have A Clever Solution)
Feb 1, 2005
We have a SQL Server database that runs a website on our server, however the company that we are running the website for requested that they have a replicated local version at their business. Everything is working fine.
However they have requested that they have access to the replication logs. They want to have the details of the recent replication details so they can see if changes they have made on their side has been transferre across successfully they also want a table with all the details in of the changes that have ever happened. Can anyone suggest a good way of doing this?
If I want to access or modify my local subscription data(not the configuration) how can I do that(from sql server 2005 or from asp.net)? Also can i update directly to the local subscriptions data or do I need another layer which will update from a table for example??
Hello! I am writing an app with C# that is using SQL Server 2005's RMO objects. I want to display a tree control with say a log history (last successful sync, dates, etc...). I know that the server stores this kind of info somewhere but I'm not sure how to access this via RMO.
Can anybody point me in the right direction? Thanks!
I have created a package which imports a unit of measure table. I now want to populate more rows in the same table from itself. In Access VBA the below code extract does the first part of the job I need to do. Can anyone point me in the right direction to convert this into an efficient SSIS solution. SQLstr =€?SELECT [UOM conv].[Short Item No], [UOM conv].UOM, Count([UOM conv].[UOM 2]) AS [CountOfUOM 2] €œ & _ €œFROM [UOM conv] €œ & _ €œGROUP BY [UOM conv].[Short Item No], [UOM conv].UOM €œ & _ €œHAVING (((Count([UOM conv].[UOM 2]))>1)); €œ
Set RsMoreThanOne = db.OpenRecordset(SQLstr) With RsMoreThanOne While Not .EOF SQLstr = "SELECT [UOM conv].* FROM [UOM conv] WHERE ((([UOM conv].[Short Item No])=" & ![Short item No] & ") AND (([UOM conv].UOM)='" & !UOM & "'));"
Set RsSql = db.OpenRecordset(SQLstr, dbOpenSnapshot) RsSql.MoveLast x = RsSql.RecordCount Set rs = db.OpenRecordset("UOM Conv") rs.Index = "PrimaryKey" RsSql.MoveFirst Item = RsSql![Short item No] For y = 1 To x Um1(y) = RsSql![UOM] Um2(y) = RsSql![uom 2] Fct(y) = RsSql!factor RsSql.MoveNext Next y For y = 1 To x - 1 For k = 1+y To x rs.Seek "=", Item, Um2(y), Um2(k) If rs.NoMatch Then rs.AddNew rs![Short item No] = Item rs!UOM = Um2(y) rs![uom 2] = Um2(k) rs!factor = Fct(k) / Fct(y) rs!calculated = True rs.Update Else If rs!calculated = True Then rs.Edit rs!factor = Fct(k) / Fct(y) rs.Update End If End If rs.Seek "=", Item, Um2(k), Um2(y) If rs.NoMatch Then rs.AddNew rs![Short item No] = Item rs!UOM = Um2(k) rs![uom 2] = Um2(y) rs!factor = Fct(y) / Fct(k) rs!calculated = True rs.Update Else If rs!calculated = True Then rs.Edit rs!factor = Fct(y) / Fct(k) rs.Update End If End If Next k Next y
RsSql.Close .MoveNext rs.Close Wend .Close End With db.Close
My company currently has about 20-25 Ms Access Database that they want toreplace the FE with .net and the BE on SQL.This will be done using Visual Studio 2005. Once the FE is converted to .netand the BE is SQL they all will be accessed through our intranet (sharepoint).I work in Ms Access and intermediate at VBA and just learing SQL through theENTERPRISE MANAGER SCREEN.I am just now looking at what Visual Studio 2005 is, but can some one tell mehow this will all connect?What is the typical route for this process?Ms access to SQL - upsizing wizard or SQL importing?????Ms Access FE to .net - summarize how this is done in visual studio (user facerebuilt) then placed on sharepoint?Can anyone sum this up?--Message posted via http://www.sqlmonster.com
Unfortunately I can't use the excuse of being a SQL newbie, but drawn ablank on the following "simple" problem.I have a table containing the following (extract) :+----+-----------+------------+---------+| id | fk_MainID | fk_GroupID | Visible |+----+-----------+------------+---------+| 4 | 158 | 1 | 1 || 3 | 148 | 1 | 1 || 5 | 150 | 1 | 1 || 6 | 146 | 1 | 1 || 7 | 127 | 1 | 1 || 8 | 125 | 1 | 1 || 9 | 117 | 1 | 1 || 10 | 119 | 1 | 1 || 11 | 128 | 1 | 1 || 12 | 118 | 1 | 1 || 13 | 105 | 1 | 1 || 14 | 99 | 1 | 1 || 15 | 102 | 1 | 1 || 16 | 153 | 1 | 1 || 17 | 157 | 1 | 1 || 18 | 152 | 1 | 1 || 19 | 149 | 1 | 1 || 28 | 162 | 10 | 0 || 25 | 160 | 1 | 1 || 27 | 162 | 1 | 1 || 26 | 160 | 10 | 0 || 29 | 151 | 1 | 1 |+----+-----------+------------+---------+I need to find the "fk_MainID" where there is a "Visible=1" value, but NOT a"Visible=0".For example:SELECT fk_MainID FROM GRP WHERE Visible=1is no good because it will select fk_MainID=162, which also has a Visible=0row.I can do it with a sub-select, eg.SELECT fk_MainID FROM GRP WHERE fk_MainID NOT IN (SELECT fk_MainID FROM GRPWHERE Visible=0)but unfortunately the query has to be "cross platform" at least to theextent that it will also work on MySQL, which doesn't support sub-selects inthe release 3.x versions.Very grateful in advance for any help.Thanks
Is there any problem with implementating some kind of replication andbacking up transaction logs at the same time? SQL Server 2000 StandardEditionThe server is configured to back up log files regularly, with thepresenceof a(New) Disaster recovery server and with an inability forstandby(Standard Edition)I am planning to implement some kind ofreplication hopefully still backing up the transaction logs to enablea point in time recovery.Thanks in advance for your great ideasVincento
hi . would greatly appreciate a clever way to make an internal "counter" on an sql table that contains 6000 articles.(one in each row). these are being accessed from a web page and i would like to know which are the most read ones. so i thought of adding a column that would in some way count each time that the row is being accessed. is there a way for this to be done?? please be detailed since i am quite new to all this. thanks beforehands.
I wanted to schedule the transaction replication. How do I do it? Currently I have set up a transaction replication which runs continuously and synchronizes the changes with immediate effect.
I need to configure a replication which will gather logs from the publication once in a day.
Hello, I'm trying to access the MSSQl 'remotey'. I open telnet and go to 127.0.0.1 1433 but can't. It seems I have done everything I can to fix it, but nothing solves the problem.
My firewall is disabled.
I have TCP/IP enabled in "SQL Server Configuration Manager" for both Client Protocol and protocols for MSSSQLSERVER (Shared Memory and NAmed Pipes are also both enabled). VIA is disabled.
In SQL Services, SQL Server Integration Services, Full Text Searc, SQL Server, SQL Server Analysis Services, and Server Browser are running. SQL Server Agent is disabled.
In Server Surface Area configuration, under Database Engine is running (automatic) and "Remote Connections" is enabled to TCP/IP and named pipes. Analysis Service has Local and Remote connections checked and is running (automatic). SQL Server agent is stopped.
Integration Services is running (Automatic) SQL Server Browser is running. (Automatic)
When I look in the error log, it shows...
Date 1/4/2007 3:21:45 AM Log SQL Server (Current - 1/4/2007 3:21:00 AM)
Source Server
Message Server is listening on [ 127.0.0.1 <ipv4> 1434].
Date 1/4/2007 3:21:45 AM Log SQL Server (Current - 1/4/2007 3:21:00 AM)
Source Server
Message Server is listening on [ 'any' <ipv4> 1433].
I have tried to telnet to port 1434 and 1433 but nothing happens. Does anyone know what else I need to be able to access that port??
here's a question i've always wondered the answer to,
you have a transaction log on sql 2000 which supposedly records all the sql commands (select, delete, insert, update) that are performed on your database.
now say you use ODBC and Microsoft ACCESS, you create a database file in Microsoft ACCESS with linked tables to your SQL Database via an ODBC connection.
now say you alter the data, maybe delete some records from that sql database using your linked table in Microsoft ACCESS
Would SQL 2000 (or any other version) record these actions in the log, even though the actions were carried out in Microsoft ACCESS? or has doing this completely negated the security offered by the transaction log feature?
do hope someone could shed some light on this, it's been bothering me for a while
I'm a developer and mostly develop Service Broker applications for my company. I do have logging for my application but unforseen errors will normally show up in the SQL Server System Logs. What would be a good way to give a developer access to read the SQL Server logs without giving away the keys to kingdom. Would that be through xp_readerrorlog or is there a better way of accomplishing this?
Say I have 3 .bak files named:jamesB.bak, jamesG.bak, jamesW.bakIs there a clever way to find out which is the most recent of thesebackup files?? Using sql query analyzer preferably...
I have multiple questions and would appreciate any suggestions in resolving them. I'm a novice to these issues.
1) First of all, what is the exact command to setup the trunc. log on chkpt. option on for a transactional log of a SQL Server 2000 database? Is this option on by default? I have noticed for one of the databases I'm managing that the transaction log was over 12 GB, while the db was only 425 MB.
2) How's it possible to run a DBCC TRACEON to see the content of the transaction log to see if we are having any issues with any uncommitted transactions, i.e. updates, inserts, and/or deletes.
3) What are the commands to truncate inactive transactions and increasing the readbatchsize?
4) lastly, how do I validate transactional replication via checksum and find valid latency between a small number of changes that need to be committed between publisher and subscriber.
I am trying to replicate only the single table of the same server in the different database.
i have made my source database as the publisher and select only the single table which i have to replicate, and similarly i have created the subscriber(Push)of the same of the with the table schema present in the database in which i want to replicate the data , with no records present in it. So when i push the data from publisher to the subscriber nothing happens and the table remains blank.
I am not able to understand what could be the reason for it, If any one can help me i would be very thankful.
i have SQL Server 2000 on my personal computer. In Enterprise Manager -> SQL Server Group, It shows "LOCAL" to me. i am trying to replicate my database but i get error message " SQL Server Replication doesnt support nick names such as '.' or 'LOCAL' as server name".
My Question is the how to solve this problem or how to change server name from LOCAL to proper name. I right clicked on "LOCAL" server to edit the registration properties but the server name "LOCAL" is unchangable there.
I am trying to test a replication or at least get the feel for it on my local copy before I set it up on the real server.
Can I do that by setting my local database as the publisher as well as the subscriber?
I am getting an error message but I am wondering if there are any settings I can change to make this work. Or any other ideas of how to see the replication tool before actually doing it live?
Error message: "Server 'MyComputerName' is neither a Publisher nor a Distributor, or you do not have permission to access replication functionality on this server.
I might add that I am not only new to the project but also new to MS SQL Server.
I have a local SQL2000 instance on my PC and cannot get in. I am running windows 2000 with active directory. I used to open the database using windows authentication. I recently had to change my password. I do not know if this has anything to do with the problem. I have tried everything, using windows authentication, using my login with old password, login with new password, sa account. Does anyone know how I can get in or how I can remove this instance and create a new one?
I folks. I have something going on with my local SQL instance. It's SQL 2000 Standard with SP3a on a W2k3 Server with SP1. It's been running fine for several months. I got brave over the weekend and broke something.
I installed the .Net Enterprise Architect and SQL Reporting Services. My SQL instance is still running, but I can't get to it through EM and SQLServerAgent won't start. When I try to start SQLServerAgent manually, it gets about halfway through the process, then shuts itself down again. I also have an MSDE instance that is not complaining at all.
I can get to the server from my applications. I can also register it in EM with the IP and get to it that way.
Here's what's in sqlagent.out:
2007-01-02 16:34:41 - ! [298] SQLServer Error: 6, Specified SQL server not found. [SQLSTATE 08001] 2007-01-02 16:34:41 - ! [298] SQLServer Error: 11004, ConnectionOpen (Connect()). [SQLSTATE 01000] 2007-01-02 16:34:41 - ! [000] Unable to connect to server '(local)'; SQLServerAgent cannot start 2007-01-02 16:34:42 - ? [098] SQLServerAgent terminated (normally)
I did confirm in the registry that the port is set to 1433. It's not blank or incorrect. I am also working with a local account that is in the administrators group. There is no AD structure at work.
Many thanks for any ideas. This one feels like a little needle in a big haystack.
Hi, i'm doing POS system by using C# in visual studio 2005. Recently, i installed the microsoft sql server management studio on my pc, i plan to do merge replication through local publications between my pocket pc and my pc. So, i opened the replication file which is under Object Explorer in microsoft sql server management studio, it ONLY show me the local subscription folder under the replication file.Do i install incomplete set of microsoft sql server management studio?Local publications and local subscription, which one is more suitable for POS system?
I have SQL Express installed on my machine. I can access it with MACHINE_NAMESQLExpress but not .SQLExpress Because of this, I cannot add a .mdf to the App_Data folder of one of my projects (I assume) because it says "cannot locate server/instance specified".
I have a local SQL Server database installed with Visual Studio .NET. I'm trying to create a SQL Server login ID to access a database on this local database. I gave it access to all of the databases with public (the one I'm using it also has DBO and execute permissions on all procs). When I try to login to it through SQL Server Query Analyzer (and also using an ASP.NET application), I get the following error:
Login failed for 'dbuser'. Reason: Not associated with a trusted SQL Server connection.
How do I set up a SQL Server login to access the database?
I am trying to get the details of an xml. For this I am using below code. I am not able to get the desired output.I want to add 1 more columns AnimalID and DetailID.I want these column to interlink the other values. Below is the desired output.
declare @x xml set @x= '<config> Â <Animal name="Baboon" ref="Ape"> Â Â Â Â <detail name="Ape detail" ref="Monkey" typo="animal" required="true">
Hi, I've installed SQL Server 2005 Express Edition, SQL Server Management Studio Express using Windows Authentification and IIS 5. The problem occurs when I try to access the default address of my local computer to test my installation. I've tried with both http://localhost and http://127.0.0.1. The system requires a password despite I don't use password for my Windows Authentification. Does IIS always demands a password regardless my settings for Windows Authentification or?
'You have to have a BackUps folder included into your release!
Private Sub BackUpDB_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BackUpDB.Click Dim addtimestamp As String Dim f As String Dim z As String Dim g As String Dim Dialogbox1 As New Backupinfo
addtimestamp = Format(Now(), "_MMddyy_HHmm") z = "C:Program FilesVSoftAppMissNewAppDB.mdb" g = addtimestamp + ".mdb"
'Add timestamp and .mdb endging to NewAppDB f = "C:Program FilesVSoftAppMissBackUpsNewAppDB" & g & ""
Try
File.Copy(z, f)
Catch ex As System.Exception
System.Windows.Forms.MessageBox.Show(ex.Message)
End Try
MsgBox("Backup completed succesfully.") If Dialogbox1.ShowDialog = Windows.Forms.DialogResult.OK Then End If End Sub
Code Snippet
'RESTORE DATABASE
Private Sub RestoreDB_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
RestoreDB.Click Dim Filename As String Dim Restart1 As New RestoreRestart Dim overwrite As Boolean overwrite = True Dim xi As String
With OpenFileDialog1 .Filter = "Database files (*.mdb)|*.mdb|" & "All files|*.*" If .ShowDialog() = Windows.Forms.DialogResult.OK Then Filename = .FileName
'Strips restored database from the timestamp xi = "C:Program FilesVSoftAppMissNewAppDB.mdb" File.Copy(Filename, xi, overwrite) End If End With
'Notify user MsgBox("Data restored successfully")
Restart() If Restart1.ShowDialog = Windows.Forms.DialogResult.OK Then Application.Restart() End If End Sub
Code Snippet
'CREATE NEW DATABASE
Private Sub CreateNewDB_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
CreateNewDB.Click Dim L As New DatabaseEraseWarning Dim Cat As ADOX.Catalog Cat = New ADOX.Catalog Dim Restart2 As New NewDBRestart If File.Exists("C:Program FilesVSoftAppMissNewAppDB.mdb") Then If L.ShowDialog() = Windows.Forms.DialogResult.Cancel Then Exit Sub Else File.Delete("C:Program FilesVSoftAppMissNewAppDB.mdb") End If End If Cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:Program FilesVSoftAppMissNewAppDB.mdb;
Jet OLEDB:Engine Type=5")
Dim Cn As ADODB.Connection 'Dim Cat As ADOX.Catalog Dim Tablename As ADOX.Table 'Taylor these according to your need - add so many column as you need. Dim col As ADOX.Column = New ADOX.Column Dim col1 As ADOX.Column = New ADOX.Column Dim col2 As ADOX.Column = New ADOX.Column Dim col3 As ADOX.Column = New ADOX.Column Dim col4 As ADOX.Column = New ADOX.Column Dim col5 As ADOX.Column = New ADOX.Column Dim col6 As ADOX.Column = New ADOX.Column Dim col7 As ADOX.Column = New ADOX.Column Dim col8 As ADOX.Column = New ADOX.Column
Cn = New ADODB.Connection Cat = New ADOX.Catalog Tablename = New ADOX.Table
'Open the connection Cn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:Program FilesVSoftAppMissNewAppDB.mdb;Jet
OLEDB:Engine Type=5")
'Open the Catalog Cat.ActiveConnection = Cn
'Create the table (you can name it anyway you want) Tablename.Name = "Table1"
'Taylor according to your need - add so many column as you need. Watch for the DataType! col.Name = "ID" col.Type = ADOX.DataTypeEnum.adInteger col1.Name = "MA" col1.Type = ADOX.DataTypeEnum.adInteger col1.Attributes = ADOX.ColumnAttributesEnum.adColNullable col2.Name = "FName" col2.Type = ADOX.DataTypeEnum.adVarWChar col2.Attributes = ADOX.ColumnAttributesEnum.adColNullable col3.Name = "LName" col3.Type = ADOX.DataTypeEnum.adVarWChar col3.Attributes = ADOX.ColumnAttributesEnum.adColNullable col4.Name = "DOB" col4.Type = ADOX.DataTypeEnum.adDate col4.Attributes = ADOX.ColumnAttributesEnum.adColNullable col5.Name = "Gender" col5.Type = ADOX.DataTypeEnum.adVarWChar col5.Attributes = ADOX.ColumnAttributesEnum.adColNullable col6.Name = "Phone1" col6.Type = ADOX.DataTypeEnum.adVarWChar col6.Attributes = ADOX.ColumnAttributesEnum.adColNullable col7.Name = "Phone2" col7.Type = ADOX.DataTypeEnum.adVarWChar col7.Attributes = ADOX.ColumnAttributesEnum.adColNullable col8.Name = "Notes" col8.Type = ADOX.DataTypeEnum.adVarWChar col8.Attributes = ADOX.ColumnAttributesEnum.adColNullable
'You have to append all your columns you have created above Tablename.Columns.Append(col) Tablename.Columns.Append(col1) Tablename.Columns.Append(col2) Tablename.Columns.Append(col3) Tablename.Columns.Append(col4) Tablename.Columns.Append(col5) Tablename.Columns.Append(col6) Tablename.Columns.Append(col7) Tablename.Columns.Append(col8)
'Append the newly created table to the Tables Collection Cat.Tables.Append(Tablename)
'User notification ) MsgBox("A new empty database was created successfully")
'Restart application If Restart2.ShowDialog() = Windows.Forms.DialogResult.OK Then Application.Restart() End If
End Sub
Code Snippet
'COMPACT DATABASE
Private Sub CompactDB_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
CompactDB.Click Dim JRO As JRO.JetEngine JRO = New JRO.JetEngine
'The first source is the original, the second is the compacted database under an other name. JRO.CompactDatabase("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:Program
Data Source=C:Program FilesVSoftAppMissNewAppDBComp.mdb; JetOLEDB:Engine Type=5")
'Original (not compacted database is deleted) File.Delete("C:Program FilesVSoftAppMissNewAppDB.mdb")
'Compacted database is renamed to the original databas's neme. Rename("C:Program FilesVSoftAppMissNewAppDBComp.mdb", "C:Program FilesVSoftAppMissNewAppDB.mdb")
'User notification MsgBox("The database was compacted successfully")
I am newbie to SQL.I need to create an application will run on server, and of course will be installed by using admin user. I can use the install user to access to database on that server?
I've created a local server from Sql Express, and report server from Reporting service configuration manager, and than publish a report on the local report server. I want to give access to the other computer user to the sql reports, database and report server.
Hello! I run an application with a SQL Server 2005 Express edition.
I read under
Start menu --> all programs --> Microsoft SQL Server Express --> Configuration Tools --> SQL Server 2005 Surface Area Configuration --> Surface Area Configuration for Services and Connections --> Database Engine --> Remote Connections
That: "By default, SQL SERver 2005 Express, Evaluation and Developer editions allow local client connetctions only. Enterprise, Standard and Workgroup editions also listens for remote client connections over TCP/IP. Use the options below to change the protocols on which SQL Server listens for incoming client connections. TCP/UP is preferred over named pipes because it requeres fewer ports to be opened across the firewall."
Here I chose the option "Local and remote connections only, using TCP/IP only".
But still, does this mean that other users can't connect to my database since I'm running the Express edition?
If that's the case, could this be changed by using mySQL instead?
Is it hard to transfer a MS SQL Server .mdf database file into a new mySQL database?
I have installed MS SQL 2005 in my system. I have created one database in my server. When iam running my application with this connections it is working fine in my local system. When i uploaded the database to some where dataserver, Iam not getting the connectins due to no remote access .
Some body suggested that to start the SQL browser in the SQL Server Configuration Manager.
I go there n tried to start the service when i put the service properties to Automatic or Manual i am getting the error message that is saying that the service is disabled cannot start automatically.
I have multiple web databases for storefront orders as linked servers on SQL Server 2008 R2. I need to organize the data for these orders into a structure that can be imported into my ERP application db frequently either on demand or periodically during the day. We are essentially trying to make the manual order entry process automated. My thought was to get the data into views that resemble the schema of the order table in my application db and then schedule a stored procedure with sql jobs or a load routine from within the ERP application that would insert data from the view into the order table.
The server acts as a subcriber and publisher and acts as its own distributor. Each publication uses its own distribution agent and is set to loop.
There are 4 queued updating subscriptions on this box.
When running 3rd party tools to determine open active ports, the replication executables (distrib and logreader) are connecting to local server multiple times. Easily 15+ established connections plus many more waits.
Everything connects to 1433 then opens a new port.
Is this because of the queued updating?
Replication is functioning as it should without any problems.
I even checked our 2 main distribution servers which only act as distributors and there is not one connection from replication to itself.