Specify different database server in SharePoint 2010 - sql

We currently have a SharePoint 2010 farm with one web front-end and one SQL 2005 database server. We want to move our SharePoint databases to a new SQL 2012 server. I have gone through Microsoft's recommended method in our dev environment - http://technet.microsoft.com/en-us/library/cc512723(v=office.14).aspx.
When we originally deployed SharePoint we did not create SQL aliases. So, now, we have to create an alias for DBServer01 to point to DBServer02. Now all of my databases are listed as attached to the DBServer01 SQL Instance, but the alias re-directs them to DBServer02. It works, but I would prefer to set this up a little more elegantly/granular (and I think this is the way it should have been setup to begin with) where each database listed in SharePoint is attached to an Alias name, rather than the DBServer name (so that it can be changed via the SQL Alias in the future, if necessary).
I cannot find a way within Central Admin to change this and was wondering if any one knew of a way to do this via the Management Shell?

Aliases are handled at the server Level, not at the database level, you will not be able to assign an alias to one database, and another alias to a second database on the same server. That is a sql limitation.
You can switch the database server your SharePoint installation is on, but there is no granularity for each database/server combination, so I don't think you can have that configuration you ask.

Related

Appropriate action installing another SQL application at work

hope everyone are okay...
I need to install any Sofware for the use of SQL. I'm just a begginer and started an online course. We have a account at work called Administrator and the only account has acces to SQL Managment studio 2014. Inside there are multiple databases linked to the external objects for stock contol purposes to collect data and view data, database was created by another company not us. Id like to download an SQL Software to run simple queries. But would need to know if it would affect any other databases or servers inside our network?.. just need to set it up for my local use.
Thanks

Moving Access 2016 application's data from Access to SQL Server 2016

I have a seemingly straight forward project, which unexpectedly faces many obstacles.
I need to move backend data of the existing Access 2016 application from Access to SQL Server 2016.
The challenges I face are:
The simplest and recommended way to migrate Access to SQL Server is using Microsoft SQL Server Assistant (SSMA) for Access. The problem is that my Access is 32-bit Click-to-Run edition. Because the target is SQL Server 2016, I should use SSMA for Access v.7.6.0, which is available only in 64-bit. To use it, I need to install 64-bit Access Runtime, which could not be installed, because per the error message “Windows Installer and Click-to-Run editions of Office programs don't get along”. The earlier version of SSMA for Access 6.0 comes in 32-bit and connects to Access fine, but could not connect to SQL Server 2016, as 2014 is the latest version it supports. Ignoring the warning and forcing the connection to SQL Server 2016 causes error collecting data… Thus, I could not use SSMA.
I was able to migrate the data from Access to SQL Server using SSIS. Now, my challenge is to repoint existing Access tables to their SQL Server copies. I was trying link, but it appears that existing Access tables could be linked only to the file system data source. If I try to make link from the SQL Server side, I could only create new linked tables, which do not do me much good as I am trying to avoid massive changes in the application. Could it be that I am missing something simple here?..
Some Access tables have columns of attachment data type. SSIS doesn’t handle attachment data type correctly. To the best of my knowledge, neither does SSMA. So, when I get to link Access tables to SQL Server, I would probably need to write some code to move attachments from the backup Access database to SQL Server. Is there some other an easier solution?
Any suggestions are greatly appreciated.
That is correct. It is a mess. You can use another (virtual) machine with a clean 64-bit Access install.
Delete the current tables in the frontend and link the SQL Server tables. They may be given a "dbo_" prefix which you can remove by renaming the tables.
This is a rewrite. Attachment fields are not supported in SQL Server. Neither are other fancy features like lookup fields and multivalue fields.

How to connect to SQL developer using my own database

I'm currently using SQL Developer 4.5.1.21 and want to take some time to learn language, run queries etc etc. I'm using a database that Oracle provides called "HR Schema" that is free for download. Now I know that I need to create a "connection" in order run queries onto this database. I begin running into trouble when I want to create my own connection. Can anybody walk me through the steps of creating a new connection? What I do is click the "+" button and click "new connection".
The major problem you have here is that you need to have an Oracle database instance installed before you can have something to connect to.
You have a couple of options here...
Download and use the free version of Oracle: Oracle Express Edition
You mentioned that you are a student. Check with your professor to see if they offer a more robust edition of Oracle for student use, such as:
a. Oracle Personal Edition
b. Oracle Standard Edition
c. Oracle Enterprise Edition
If you have the available funds, and you intend on persuing a future in database work, you could purchase a license of one of the above mentioned editions.
You can read more about the various editions of Oracle here.
One thing to keep in mind here is that you are wanting to use the sample schemas that Oracle provides, in particular the "HR" schema. Taking a look at the installation documentation over at the Oracle site, I do not see mention of the Express edition of Oracle server on the availability table, but that may not mean that it wont work.
To address the connection portion of your question, once you get your database set up and running, you should be able to connect to it by providing the hostname (localhost for connecting to your local machine), port, and various other information such as username and password. In all, your connection string would likely look like the following:
Host=localhost; SID=MyOracleServer; port=1677; Min Pool Size=1;
Connection Lifetime=600; User ID=EhBabay; Password=secretpassword123;
Or within SQL Developer you should be able to connect to your local instance of the Oracle database fairly easily, without having to create a connection string. The connection string would still be used though, within any applications you write that you want to connect to the database with.
The main thing here, however is that you need to have an instance of an Oracle database installed and running somewhere that you have access to.

Aliasing a linked server?

I have a server which I need to have as a linked server to another server, using sp_addLinkedServer.
My server's name is in the format "DepartmentName.CompanyName.com", which I can usually change to [blah.blah.com], but which I can't use in the SQL Server Management Studio View creator, because it keeps deleting my square brackets...
On the other hand, because the #srvproduct is SQL Server, I can't specify a name for the server to use, either, so I can't just call it "DepartmentName".
I seem to be in a bit of a catch-22 here. Any suggestions?
The View editor in Management studio (and enterprise manager before it) is, shall we say, rather limited, and prone to exploding the number of references to a table/view if there are complex conditions.
It's much to be preferred that you learn to write CREATE/ALTER VIEW statements in query windows (there are options to script VIEWs to a new query window as ALTER, if you're wanting to update an existing view).
Alternatively, you can add the linked server using, say, the "Microsoft OLE DB Provider for SQL Server", "SQL Native Server", or any of a number of other providers, rather than using the "SQL Server" provider, and then you can specify a different name for the linked server. (We do this in my shop so that our test servers refer to their partners using the same names as are used on our production servers)
E.g.:
EXEC master.dbo.sp_addlinkedserver #server = N'ALIAS', #srvproduct=N'ACTUALSERVER', #provider=N'SQLOLEDB', #datasrc=N'ACTUALSERVER'

Visual Studio 'SQL Server 2008 Server Project' vs. 'Sql Server 2008 Database project'?

I can't see to find a quick explanation of the differences so I can figure out which to use.
One is for a server one is for a Database? Im not sure what that means..
Basically we are doing a new web app and I want to see what these project types can offer me in terms of tracking the DB code/schema etc..
SQL Server 2008 Project: this is used to create a SQL-CLR module, e.g. create a stored proc, a function, an aggregate etc. in C# (or VB.NET), that will be run inside SQL Server.
When you create such a project, and you click "Add New Item" in Solution Explorer, you're given the choice of creating a stored procedure, a trigger, an aggregate, a user-defined function, a user-defined type or a helper class. These will all be compiled into a .NET assembly, which will be deployed to SQL Server and be executed inside SQL Server in the SQL-CLR runtime environment.
SQL Server Database Project: that's only a collection of SQL scripts to be run against a database, to create and manipulate database objects
In a SQL Server Database Project, you basically only get to add SQL scripts - .sql files. Nothing else, really. So it is indeed quite different from the SQL Server 2008 Project type!
The answer here doesn't seem to actually answer the posted question. "SQL Server 2008 Server Project" "SQL Server 2008 Database Project" are both things that exist in Visual Studio 2008 Database Edition, but sadly while there isn't one named "SQL Server 2008 Project" as the answer suggests, there is one "SQL Server Project" that matches the description. Moreover, there isn't a project type anymore called "SQL Server Database Project" (at least not in Visual Studio 2008 Team Suite), although the description given above seems to describe the much older database projects that were at one point available in VS.
After thinking about it further, I'm going to guess that marc_s doesn't have the Database Edition (otherwise known as Data Dude or DBPro) installed. Correct me if I'm wrong.
Sql Server 2008 Database Projects and Sql Server 2008 Server Projects seem to do basically the same thing. I would have hoped that the Server projects would be used for the installation and configuration, and change management of a Sql Server instance, while Database Projects would be used for individual databases inside them...but this doesn't seem to be the case. Has anyone actually been able to determine the differences between them?
After playing around for a bit, the only difference I've been able to find is that Sql Server 2008 Server Projects will always deploy to the master database on the server you deploy to, regardless of what kind of database you import (master or otherwise) when you create the project. So in that case, Database Projects are for your business databases while Server Projects are specifically for the master database on the server that houses your business databases.
Edit: After scouring the VS2008 documentation a little harder, I came across this specification:
"Deploying Server Projects
A database project can contain definitions for database objects, for server objects, or for both. In most environments, developers can change database objects, but only the database administrator can change server objects. You can enforce this restriction by putting server objects in a separate project (known as a server project). You can then restrict version control so that only your administrators can change the server project. In a staging or production environment, the server project and its objects will most often be deployed separately from the project that contains the database objects.
You deploy a server project by using the same procedures that you use to deploy a schema project."
http://msdn.microsoft.com/en-us/library/dd193413.aspx