In an effort to create a more unified support experience, we have moved support of our Knowledgebase to Rockwell Automation Tech Support.

If you would like to speak with one of our engineers, please Submit a Question or give us a call at the phone number here. In North America, To route your phone support request directly to a technical support engineer, call toll free 1-888-382-1583 or 1-440-646-3434, select Option 3 (Technical Support), then select Option 5 (More Options). When prompted, enter the ThinManager Direct Dial Code 201.

ThinManager Database Tool

From ThinManager Knowledge Base
Jump to: navigation, search

The ThinManager Database Tool is a utility that allows the end user to modify certain values in the configuration database from a command line instead of through the ThinManager interface.

Examples

TMDBT --terminal-restart Paint1 Connects to the local ThinServer and restarts the terminal that's not in a group named Paint1.
TMDBT --server 10.50.10.20 Administrator Password --terminal-restart Paint1 Same as the above example except the program will connect to the ThinServer at 10.50.10.20 using the specified credentials.
TMDBT --file commands.csv Parses the file commands.csv for any number of commands.
TMDBT --terminal-setwindowscredentials Paint1 User1 Password --terminal-restart Paint1 Sets the credentials for terminal Paint1 to User1 Password and then restarts it.

Behavior Notes

Credentials

Wherever new credentials are specified there as three different defined behaviors.

UserName Sets the username and leaves the domain field unchanged.
Domain\UserName Sets the username and domain.
.\UserName Sets the username and removes the domain.

Names and Group Names

When specifying a Terminal name or a Location name the whole path including groups must be specified.

Terminal1 Refers to an terminal named Terminal1 that is not a part of any group.
Painting\Paint1 Refers to a terminal named Paint1 in the Painting group.
BaseLocation\Room302\PaintBooth Refers to the PaintBooth location that is in the Room302 group that is in the BaseLocation group.

Display Client names, Terminal Server names, and TermSecure User names are all unique; Only the name is specified.


Commands

Program Behavior

Output

By default only errors will be printed to the command prompt. Using one of the below settings will modify this behavior. This argument must be listed first or it will be ignored.

--quiet Suppresses all messages.
--verbose Outputs information from all commands as well as errors.
Connection

Omitting this parameter will cause the program to connect to the local ThinServer. This argument must be listed first or only be preceded by --quiet / --verbose or it will be ignored.

--server IPAddress User Password Connects to the server specified by IPAddress using the UserName/Password specified.
Database Password

Provides a password to encrypt the database (ThinManager 11.2 and newer). This is only required when connecting to new installations, upgrades from 11.1 and older, or when restoring a database. This argument must be listed first or only be preceded by --quiet / --verbose / --server or it will be ignored.

--password Password Provides a password to ThinServer to use for configuration database encryption.
--newpassword Password [CurrentPassword] When the require new password flag is set this sets the new database password to Password. CurrentPassword is required if the TMDBT user does not have the Administer ThinServer permission.
CSV File

Comma delimited CVS file(s) can be specified to make passing commands easier. Any number of files can be specified and intermixed with command-line arguments.

--file FileName Specifies a CSV file to parse for commands. The file must be in the same directory as this program or the full file path must be specified.

Global

--restartall WaitTime Restarts all online terminals waiting the specified WaitTime in milliseconds between each.
--rebootall WaitTime Reboots all online terminals waiting the specified WaitTime in milliseconds between each.
--calibratealltouchscreens Initiates the touchscreen calibration on all online terminals.
--replaceallwindowscredentials OldUser NewUser NewPassword Replaces all instances of OldUserName with NewUser and NewPassword.
--clearmacall Clears all terminals IDs. Dissociates the terminal defined in ThinManager from the thin client.
--listcustomvariables [show] Lists all configured custom variables as object name, variable name, visibility. Show is optional to include the custom variable's value.

ThinServer

--thinserver-enablesync Enables automatic synchronization. Requires a primary and secondary ThinManager server to be specified.
--thinserver-disablesync Disables automatic synchronization.
--thinserver-waitforsync [timeout] Waits until the ThinManager server pair has successfully synchronized. The timeout parameter can be optionally added to specify the time in seconds to wait, 15 seconds if not specified. Returns 1 if timeout is reached.
--thinserver-setprimarytmserver ServerName ServerIP Sets ServerName as the the Primary ThinManager server.
--thinserver-setsecondarytmserver ServerName ServerIP Sets ServerName as the Secondary ThinManager server.
--thinserver-addadditionaltmserver ServerName ServerIP Adds ServerName as an additional ThinManager server. Not involved in synchronization.
--thinserver-removetmserver ServerName Removes ServerName as a ThinManager server.
--thinserver-addsecuritygroup GroupName Adds a Windows security group GroupName to manage the ThinManager system.
--thinserver-removesecuritygroup GroupName Removes security group GroupName.
--thinserver-setsecuritygrouppermissions GroupName Permissions Sets the ThinManager permissions for GroupName to Permissions. Comma Delimited list of permissions.
e.g. TMDBT --thinserver-setsecuritygrouppermissions "Local Admins" "Connect,Shadow,Interactive Shadow"
Available permissions vary depending on the installed version of ThinServer. The complete list for a specific system can be found on the ThinManager Security Groups page of the ThinManager Server Configuration Wizard.
--thinserver-requirenewdatabasepassword Require a new configuration database password the next time ThinManager is run.
--thinserver-updatedatabasepassword Database Password [CurrentPassword] Sets the specified database password. Database should be 'main' in most cases. CurrentPassowrd is required when the user running the command does not have ThinManager Administration permission.
--thinserver-addscheduledbackup Database OutputFile Repeating TimePeriod [Time] Adds a scheduled backup to the system schedule.
Database - 'configuration' or 'biometric'
OutputFile - 'auto' or the desired filename to use
Repeating - 0 for Once, 1 for Weekly, 2 for Monthly, 3 for Yearly, 4 for Timed
TimePeriod - One of the following, based on the value of Repeating:
(Once, Yearly) - "YYYY/MM/DD" formatted date
(Weekly) - Days - bitfield starting at Sunday - Sun = 1, Mon = 2, Tue = 4, etc. e.g. 127 for every day of the week.
(Monthly) - Day of the month - 1-31
(Timed) - Minutes. e.g. 3000 for once every 50 hours.
Time - Optional 24 hour format "HH:MM" time to run the schedule. Uses the current time if omitted.
--thinserver-addscheduledreport ReportFile OutputFile Repeating TimePeriod [Time] Adds a scheduled report to the system schedule.
ReportFile - Filename of the desired report. e.g. TerminalSessionEventsTemplate.csv
OutputFile - 'auto' or the desired filename to use
Repeating - 0 for Once, 1 for Weekly, 2 for Monthly, 3 for Yearly, 4 for Timed
TimePeriod - One of the following, based on the value of Repeating:
(Once, Yearly) - "YYYY/MM/DD" formatted date
(Weekly) - Days - bitfield starting at Sunday - Sun = 1, Mon = 2, Tue = 4, etc. e.g. 127 for every day of the week.
(Monthly) - Day of the month - 1-31
(Timed) - Minutes. e.g. 3000 for once every 50 hours.
Time - Optional 24 hour format "HH:MM" time to run the schedule. Uses the current time if omitted.
--thinserver-setdns ServerIPs Domain [SearchDomain] Adds a semi-colon delimited list of IP addresses from ServerIPs.
--thinserver-removedns Removes DNS information. Returns system back to 'not using DNS server' state.

Security

--security-addgroup GroupName Adds an Access Group named GroupName.
--security-addwindowsgroup GroupName Adds Domain Group as an access group. The domain group must be specified as a path starting with the domain. e.g. ThinManager.com/Users/Engineering
--security-removegroup GroupName Removes GroupName as an Access Group. Removes all permissions that relies on the GroupName Access Group.
--security-addmemberterminal GroupName TerminalName [inherit] Adds GroupName Access Group to TerminalName. if TerminalName is a terminal group, the inherit parameter can be optionally added to apply to all terminals in that group.
--security-addmemberdisplayclient GroupName DisplayClientName Adds GroupName Access Group to DisplayClientName.
--security-addmemberuser GroupName UserName [inherit] Adds GroupName Access Group to Relevance User UserName. This command is not valid for AD linked users. if UserName is a user group, the inherit parameter can be optionally added to apply to all users in that group.
--security-addmemberlocation GroupName LocationName [inherit] Adds GroupName Access Group to LocationName. The inherit parameter can be optionally added to apply to all sub-locations.

PXE

--pxe-enable Enables ThinManager PXE Server.
--pxe-disable Disables ThinManager PXE Server.
--pxe-setmode [AdapterIP] ModeNumber Sets the PXE Mode to ModeNumber. ModNumber: 0 - Using Standard DHCP, 1- with Boot Options, 2 - Not using standard DHCP. AdapterIP can be optionally specified to modify the setting for that adapter only.
--pxe-allownew [AdapterIP] Allow unknown PXE clients to boot from ThinManager. AdapterIP can be optionally specified to modify the setting for that adapter only.
--pxe-disallownew [AdapterIP] Disallow unknow PXE clients. AdapterIP can be optionally specified to modify the setting for that adapter only.
--pxe-addiprange StartIP EndIP RouterIP NetMask Adds IP address range from StartIP to EndIP with a router of RouterIP and subnet mask of NetMask. Only used when PXE mode is set to not using standard DHCP.
--pxe-removeiprange StartIP Removes IP address range starting with StartIP.

Terminal

--terminal-restart TerminalName Restarts the terminal with the name TerminalName.
--terminal-reboot TerminalName Reboots the terminal with the name TerminalName.
--terminal-poweroff TerminalName Turns off the terminal with the name TerminalName.
--terminal-disable TerminalName Disables the terminal with the name TerminalName.
--terminal-enable TerminalName Enables the terminal with the name TerminalName.
--terminal-calibratetouchscreens TerminalName Calibrates all touchscreens connected to the terminal with the name TerminalName.
--terminal-calibratetouchscreen TerminalName ScreenNumber Calibrates all touchscreens connected to screen ScreenNumber on the terminal with the name TerminalName.
--terminal-replacewindowscredentials OldUser NewUser NewPassword Replaces all instances of OldUser with NewUser and NewPassword for all terminals.
--terminal-setwindowscredentials TerminalName NewUser NewPassword Sets the credentials for the specified TerminalName to NewUser and NewPassword.
--terminal-setmac TerminalName TerminalMAC Sets the primary TerminalID (MAC) to TerminalMAC for the terminal with the name TerminalName.
--terminal-clearmac TerminalName Clears the TerminalID for terminal TerminalName.
--terminal-sendmessage TerminalName MessageTitle MessageText Creates a message box on terminal TerminalName with MessageTitle as the title and MessageText as the body of the dialog.

Display Client

--displayclient-replacewindowscredentials OldUser NewUser NewPassword Replaces all instances of OldUser with NewUser and NewPassword for all display clients.
--displayclient-setwindowscredentials TerminalName DisplayClientName NewUser NewPassword Sets the credentials for the specified DisplayClientName under TerminalName to NewUser and NewPassword.

Terminal Server

--terminalserver-disable ServerName Disables the terminal server with the name ServerName.
--terminalserver-enable ServerName Enables the terminal server with the name ServerName.
--terminalserver-replacewindowscredentials OldUser NewUser NewPassword Replaces all instances of OldUser with NewUser and NewPassword for all terminal servers.
--terminalserver-setwindowscredentials TerminalServerName NewUser NewPassword Sets the credentials for the specified TerminalServerName to NewUser and NewPassword.
--terminalserver-getconnectedterminals TerminalServerName Returns a comma separated list of terminal names of terminals connected to TerminalServerName.
--terminalserver-getconnectedterminalsall TerminalServerName Returns a comma separated list of terminal names of terminals connected to TerminalServerName including background sessions for terminals using Instant Failover.
--terminalserver-addrds ServerName IPAddress [ Username Password ] [ SmartSession ] Creates an RDS server named ServerName with an IP of IPAddress. Username and Password are optional to enable data collection. SmartSession is optional to enable SmartSession.

Relevance User (TermSecure)

--termsecure-setcardnumber Username CardNumber Sets the card id to CardNumber for the specified TermSecure user username.
--termsecure-setcardnumberbywindowsuser WindowsUsername CardNumber Sets the card id to CardNumber for a TermSecure user using a unique Windows username WindowsUsername.
--termsecure-replacewindowscredentials OldUser NewUser NewPassword Replaces all instances of OldUser with NewUser and NewPassword for all TermSecure users.
--termsecure-setwindowscredentials TermSecureUser NewUser NewPassword Sets the credentials for the specified TermSecureUser to NewUser and NewPassword.
--termsecure-setstoredpassword ADUser [ Password ] Allows ThinManager to store ADUser's password. Password is optional, if omitted the password will be collected and stored at next user login.
--termsucure-disablestoredpassword ADUser Disables and removes ADUser's stored password.
--termsucure-setcardlogin Username [ "Password" ] [ "PIN" ] Sets password and/or PIN required for card logins for Username.
--termsucure-setbiometriclogin Username [ "Password" ] [ "PIN" ] Sets password and/or PIN required for biometric logins for Username.
--termsucure-setmanuallogin Username [ "Password" ] [ "PIN" ] Sets password and/or PIN required for manual logins for Username.
--termsucure-setrequirepinchange Username Requires Username to change their PIN at next login.
--termsucure-setpin Username PIN Sets the PIN for Username. Does not verify that the supplied PIN conforms to length or complexity requirements.

Relevance Location

--location-replacewindowscredentials OldUser NewUser NewPassword Replaces all instances of OldUser with NewUser and NewPassword for all locations.
--location-setwindowscredentials LocationName NewUser NewPassword Sets the credentials for the specified LocationName to NewUser and NewPassword.