Deploying SSIS Package from Server A to Server B - ssis

I am using VS 2017 SSDT 15.9.20 to create an SSIS package. The package is originally created in Server A where SSDT is installed and the SQL server resides in Server A. So I was ale to create the package in Server A. I created a SQL job in Server A and linked directly to run the DTSX file without deploying it.
What my package does:
In server A my package will read the excel in the location C:\Users\xxx\Documents\myproj\excelfile.xls
and will create excel sheets inside C:\Users\xxx\Documents\myproj\files\ folder.
Deployment:
Now I want to deploy this package to Server B. And my package will read the excel in the location \ServerB\S:\Documents\myproj\excelfile.xls
and will create excel sheets inside \ServerB\S:\Documents\myproj\files\ folder.
My questions:
Should I deploy my project to create dtsx file? There is already a dtsx file inside my project folder. Can I not just move that file to server B and change the connection string and paths? Will it work that way?
SSIS deployent tool does not work for me from server A. It does not identify the destination servers.How can be deployment made easy? How can I change the destination paths?
Server A has both SSDT installed and SQL database resides in same server. But the target server B is a database server and does not have SSDT in it. I will schedule a job in SQL server of server B that will call my dtsx package and execute it.
I am new to SSIS. so please don't close this question and would be great if anyone can help me with these questions. Thanks!

Without knowing the version of SQL, I'll give both answers:
Should I deploy my project to create dtsx file? There is already a
dtsx file inside my project folder. Can I not just move that file to
server B and change the connection string and paths? Will it work
that way?
Versions less than SQL 2012: Copy the dtsx file from your project to the folder on the target server. Connection strings can be change in the configuration of the SQL Agent job or by using package Configurations:
https://learn.microsoft.com/en-us/sql/integration-services/lesson-5-add-ssis-package-configurations-for-the-package-deployment-model?view=sql-server-ver15
Versions greater SQL 2012: Create the ssis catalog on the target servers:
https://learn.microsoft.com/en-us/sql/integration-services/create-the-ssis-catalog?view=sql-server-2014.
Right click on the project and use the wizard to deploy to the target server. Connection strings can be modified in SQL Agent as noted above, or you can use parameters:
https://learn.microsoft.com/en-us/sql/integration-services/lesson-6-using-parameters-with-the-project-deployment-model-in-ssis?view=sql-server-ver15
The latter my seem like more work at first, but there is a myriad of benefits and it is the preferred way of doing things
SSIS deployent tool does not work for me from server A. It does not
identify the destination servers.How can be deployment made easy?
How can I change the destination paths?
Follow either deployment method noted above. Package deployment (copy files to a folder) still works in later versions, but it is less easy to manage and less things done for you like securing configurations and setting up logging.
Server A has both SSDT installed and SQL database resides in same
server. But the target server B is a database server and does not
have SSDT in it. I will schedule a job in SQL server of server B
that will call my dtsx package and execute it.
SSDT has no bearing on SSIS, but Integration Services does. SSDT is a developer tool and really should only be installed on developers machines for the purpose of creating packages and testing. It is better to not have this on the server because it encourages development to happen there and for devs to logon to the server like it's their laptop. Integration Services is a service that comes with SQL Server and is used for executing packages. You'll need to add this service to the instance if you want to execute packages from SQL Agent. This link explains that and gives guidance on installing SSDT locally:
https://learn.microsoft.com/en-us/sql/integration-services/install-windows/install-integration-services?view=sql-server-ver15

Related

How do I build a SSDT VS 2015 package to production server?

I'm trying to build a SSDT (SSIS) package from Visual Studio 2015 to my prod server that runs Sql Server 2016. I'm coming from a SSIS 2008 r2 environment that allowed me to build my packages and then copy the files over to the server and execute the *.SSISDeploymentManifest. Now when I hit Deploy in VS, it goes through the wizard, but it's asking for destination server information. I cannot connect directly to the prod server from VS or SSMS due to security. Is there a way to get VS to deploy(or build) the package and .ispac file locally and then I can manually more it to the appropriate server and then execute it?
So far, my only work around is to Build the package. However, I have found that it puts the .dtsx file in the obj\Development folder and the .ispac file in the bin\Development folder. Going back and forth to copy files for numerous packages is painful and I'm sure not the intended process.

SSIS Bids 2008 package deployment

I am developing a SSIS package using BIDS 2008 which is for SQL Server 2008 R2.
I need to deploy my application in DEV and QA. Would generating a dtsConfig for both environments sufficient for deployment. I am planning a file based deployment where I deploy the package and dtsConfig file on a server location. I have included the configuration file in the job step of the job. So what I understand is if there are two enviornments ,I would need to create two job scripts. Am I right ?
You need two different job scripts if there are any differences in the name/location of either the package or the config file between the two environments.
If you are doing a file system deployment, and using relative/local path to specify the location of the package and config (in other words, you don't have to specify the servername in the path) then the same job script should work in both environments.

how to migrate ssis/ssas

I am migrating from a local sql server 2012, to a sql server 2016 in AWS.
For the databases I will backup them up, and then restore them in the new server, I will also transfer the logins and jobs. (I have done this a few times in the past).
I am puzzled about how to migrate SSIS and SSAS… is there a script to back it all up and restore in the new server? I have never migrated neither SSIS nor SSAS, not sure what to expect.
SSIS - at the core SSIS is either files with a .dtsx extension or a zip file with a .ispac extension
The .ispac should live in the SSISDB on your SQL Server. You can export them out by simply right clicking on the project and select Export
The .dtsx files might live in msdb under sysssispackages but they might also be in the SSIS Package Store, which is a fancy location under the SQL Server installation. Or they might be anywhere on the file system. Best approach is to find the job that runs the packages and pick apart the target to discover the where.
SSAS - They're a big fine model so won't you just back that cube up {Apologies to Juvenile}. An alternative article for backing up SSAS but you will end up with an .abf file which is everything you should need for the restore. You might also take a moment to start scheduling regular backups of your AS instances because it sounds like that's never been done.
You can also fire up SSDT and reverse engineer the existing model (tabular or multidimensional) and deploy from VS.

Connection Manager Provider SSIS package in VS 2012

I am creating my first SSIS package using Business Intelligence in Visual Studio 2012. I am adding the contents of an Excel sheet to an local VS database. In the Destination Assistant I am asked Destination Type = SQL Server, New: Provider - I see no .NET Framework option. The result seems to be that I am then unable to select my server and therefore databases.
Am I just missing the point?
I would recommend that you investigate the destination server and verify that you have the providers installed on that system. Typically these are installed at the time that SQL server is installed, but is possible via custom installation to specify the providers that are installed. It may be necessary for you to install any providers needed. A second option would be to point to a database that you know that you can connect to, say a localhost sandbox or other tried database. That would help you to determine if it's server side or client installation issues.

Where are SSIS Packages Saved?

I right clicked on a Database in the object explorer of SQL Server 2008 Management Studio. I went to Tasks > Import Data, and imported some data from a flat text file, opting to save the package on the server.
Now how the heck do I get to the package to edit or run it again? Where in SQL Server Management Studio do I go? I've expanded everything and I can't find it. It's driving me nuts.
If you connect to the Integration Services instance on the server (different choice in the dropdown from "Database Engine" when you connect in SQL Server Management Studio), they'll be under the MSDB folder under Stored Packages.
When you start management studio and connect to a database, make sure you have the server type set to Integration Services instead of Database Engine.
You can find the file path in SSIS under "properties" of the package.
right click the package in solution explorer > full path in the properties window
They are stored on the file system as .dtsx files or in msdb.dbo.sysssispackages. If they are stored in the database you can run them with sql server management studio by connecting to integration services. To edit them, you'll need to export to the file system (.dtsx file) then edit.