I am trying to use Datamover for the 1st time for my new client.. I looked at the user guide and i could get the feel of it but not confident
Client is already using DM to refresh the data from higher env to lower env using the staging area and its capped to 300 GB. The development team is already using this as a self service tool. Now that we are planning to build a new TD VM my task is to migrate subset data from Prod to the new VM.
Here is my questions:
There is already an existing job defined as **bleep**. What is command that i would use to read what is defined in the parameter file?
I want to create a new Job yyy and define the settings in the parameter file? what would be the command to do it?
The parameter file that gets created for job yyy and changes that i make for testing will it influence the parameter file for the job **bleep**? in easy terms is parameter file that gets created is unique to each job?
Since i did not have the confidence to work on the command line i tried using the portlet but everytime when i try to save the new job that i created it throws me a error saying " Error: Not enough objects to copy were selected ".
Basically i have created some objects in my userid ( tables , views , macros , Join indexes ).. i am trying to move those in test env under my same user id..
Source Prod system : 14.10 ( 6 node ) , Target Dev system ( 2 node ) : 14.10 , DM version is 15.0 ( only 1 agent is configured )
Would appreciate your inputs.
Not a guru and sure if you figured this one out already but just in case you haven't yet:
** When I am working on the DM CLI, I really find the "datamove help/--help" command very useful when I forget which command i need to use :-)
To get the parameter values of an existing job, you can:
1. Check it out in VP by clicking on the preview or edit option
2. OR in the DM CLI, use the "datamove list_job_definition" command to generate the XML file (DM parameter files are in XML format) and from the XML file you can view the parameters
If you already have the XML file, you can create the job using:
1. "datamove move -f" command which will create the job and run it immediately afterwards
2. OR run a "datamove create -f" command to create the job (will not run it yet) , then once the job is created, run a "datamove start" command
I am not sure if i understood this question: "in easy terms is parameter file that gets created is unique to each job?", but yes, each existing job will have a different parameter file (at the very least they will have unique job names in the parameter file, since DM does not allow jobs to have the same job names).
" Error: Not enough objects to copy were selected " - I got this error once when i accidentally clicked on save without choosing any object to move. To see if you have selected anything for your job, click on the "Selection Summary" tab and you should see the objects you have chosen so far there :-)
Thanks for your reply..
Every time i try to create a new job it throws me an error..
dmuser@dmdev:~/KN>datamove create -job_name KN_TEST -f kntest.xml
Data Mover Command Line 15.00.01.00
Failed to read user input XML file
Bascially i want to create a new XML file of my choice .. but it is giving me the above error..
If there is sampel xml file available i can rename and modify the setting then use the datamove start command to run it?
Hmmm ok, when you have the XML file, the only command you need to issue is:
datamove create -f <XML file>
The job_name parameter is specified inside the XML file so no need for the job_name option
Here is a sample XML file to move 1 table. Note that I am assuming you are not using a user ID pool if you are, then just keep the target user and password empty and set the user id pool to true. Also it is best to use encrypted passwords for security but to make this sample simple, im using the tag for plain text password.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <!-- Copyright (C) 2009 by Teradata Corporation. All Rights Reserved. TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET --> <dmCreate xmlns="http://schemas.teradata.com/dataMover/v2009" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.teradata.com/dataMover/v2009/DataMover.xsd"> <job_name>MY_JOBNAME</job_name> <source_tdpid>TDSYSTEMA</source_tdpid> <source_user>MYSOURCEID</source_user> <source_password>MYSOURCEIDPWD</source_password> <target_tdpid>TDSYSTEMB</target_tdpid> <target_user>MYTARGETID</target_user> <target_password>MYTARGETIDPWD</target_password> <use_userid_pool>false</use_userid_pool> <data_streams>2</data_streams> <source_sessions>48</source_sessions> <target_sessions>48</target_sessions> <max_agents_per_task>1</max_agents_per_task> <overwrite_existing_objects>true</overwrite_existing_objects> <force_utility>ARC</force_utility> <online_archive>false</online_archive> <database selection="unselected"> <name>MYSOURCEDB</name> <target_database> <name>MYTARGETDB</name> </target_database> <table selection="included" copyStats="true"> <name>MYSOURCETBL</name> <validate_row_count>none</validate_row_count> <compare_ddl>false</compare_ddl> </table> <table selection="included" copyStats="true"> <name>MYTARGETTBL</name> <validate_row_count>none</validate_row_count> <compare_ddl>false</compare_ddl> </table> </database> </dmCreate>
Let me know if this works for you :)