Migration example steps using the measDataLoader
- Last UpdatedNov 14, 2025
- 3 minute read
The steps below illustrate the commands for migrating the configuration and data for the following:
-
Area of Responsibility (AOR) and AOR group for select Measurement points (PSR_1_MP1 to PSR_9_MP1).
-
Select Gas Quality (GQs) (PSR_1_GQ1 to PSR_9_GQ).
-
Meters (PSR_1_MTR1 to PSR_9_MTR1).
Note: $conn = 'localhost\OASYSHDB'
-
Migrate the setup. Set $conn to your local server containing the data to be migrated.
measDataLoader -S "$conn" -D "$token" -t areaDefine -q "select * from areaDefine where areaName = 'PSRAREA'"
# Note: this is an alternate way of importing:
measDataLoader -S "$conn" -D "$token" -t groupDefine -q "select * from groupDefine where groupSlot = <ID>" -i "select groupSlot from groupDefine where groupName = 'PSRGROUP'"
measDataLoader -S "$conn" -D "$token" -t areaGroupRefer -q "select AGR.* from areaGroupRefer AGR join areaDefine AD on AGR.areaSlot = AD.areaSlot and AD.areaName = 'PSRAREA'"
-
To be able to see the objects and data that are loading, connect to your system in the cloud using the AVEVA Measurement Advisor client. From the User Summary, add yourself to the area View > System Configuration > User Summary.
-
Migrate the objects and their configurations.
measDataLoader -S "$conn" -D "$token" -t objectDefine -q "select * from objectDefine where objectName like 'PSR___MP1'"
measDataLoader -S "$conn" -D "$token" -t mpDefine -q "select * from mpDefine where mpName like 'PSR___MP1'"
measDataLoader -S "$conn" -D "$token" -t objItem -q "select * from objItem where objectId in (select objectId from objectDefine where objectName like 'PSR___MP1')"
measDataLoader -S "$conn" -D "$token" -t objectDefine -q "select * from objectDefine where objectName like 'PSR___GQ1'"
measDataLoader -S "$conn" -D "$token" -t gasQualityDefine -q "select * from gasQualityDefine where gqName like 'PSR___GQ1'"
measDataLoader -S "$conn" -D "$token" -t objItem -q "select * from objItem where objectId in (select gqId from gasQualityDefine where gqName like 'PSR___GQ1')"
measDataLoader -S "$conn" -D "$token" -t objectHistoryContext -q "select * from objectHistoryContext where objectId in (select gqId from gasQualityDefine where gqName like 'PSR___GQ1')"
measDataLoader -S "$conn" -D "$token" -t objectDefine -q "select * from objectDefine where objectName like 'PSR___MTR1'"
measDataLoader -S "$conn" -D "$token" -t meterDefine -q "select * from meterDefine where meterName like 'PSR___MTR1'"
measDataLoader -S "$conn" -D "$token" -t objItem -q "select * from objItem where objectId in (select meterId from meterDefine where meterName like 'PSR___MTR1')"
measDataLoader -S "$conn" -D "$token" -t objectHistoryContext -q "select * from objectHistoryContext where objectId in (select meterId from meterDefine where meterName like 'PSR___MTR1')"
-
Migrate the connectivity.
measDataLoader -S "$conn" -D "$token" -t mpRefer -q "select MPR.* from mpRefer MPR join mpDefine D on MPR.mpId = D.mpId and D.mpName like 'PSR___MP1'"
-
Migrate the data.
Note: This example migrates the data one object at at time.
measDataLoader -S "$conn" -D "$token" -t problematicContext -q "select * from problematicContext where objectId = <ID>" -i "select gqId from gasQualityDefine where gqName like 'PSR___GQ1'"
measDataLoader -S "$conn" -D "$token" -t adjustmentContext -q "select * from adjustmentContext where objectId = <ID>" -i "select gqId from gasQualityDefine where gqName like 'PSR___GQ1'"
# Import HGA 1 object at a time and for 1 month at a time.
measDataLoader -S "$conn" -D "$token" -t hourlyGasAnalysis -q "select * from hourlyGasAnalysis where gqId = <ID> and time between <TIMERANGE>" -i "select gqId from gasQualityDefine where gqName like 'PSR___GQ1'" -s 1615075200 -e 1683316800 -T 2592000
# MeterData
measDataLoader -S "$conn" -D "$token" -t PPAcontext -q "select * from PPAContext where meterId = <ID>" -i "select meterId from meterDefine where meterName like 'PSR___MTR1'"
measDataLoader -S "$conn" -D "$token" -t problematicContext -q "select * from problematicContext where objectId = <ID>" -i "select meterId from meterDefine where meterName like 'PSR___MTR1'"
measDataLoader -S "$conn" -D "$token" -t adjustmentContext -q "select * from adjustmentContext where objectId = <ID>" -i "select meterId from meterDefine where meterName like 'PSR___MTR1'"
# Import DMR 1 object at a time and for 1 year at a time.
measDataLoader -S "$conn" -D "$token" -t dailyMeterReading -q "select * from dailyMeterReading where meterId = <ID> and time between <TIMERANGE>" -i "select meterId from meterDefine where meterName like 'PSR___MTR1'" -s 1615075200 -e 1683316800 -T 31104000
# Import HMR 1 object at a time and for 1 month at a time.
measDataLoader -S "$conn" -D "$token" -t hourlyMeterReading -q "select * from hourlyMeterReading where meterId = <ID> and time between <TIMERANGE>" -i "select meterId from meterDefine where meterName like 'PSR___MTR1'" -s 1615075200 -e 1683316800 -T 2592000