Whenever I run
sqlcmd I get "command not found"
sqlcmd -S localhost -U SA -P '<YourPassword>' sqlcmd: command not found
How can I resolve that?
Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. It only takes a minute to sign up.Sign up to join this community
There are two methods of resolving this.
You can use the tutorial's recommended method. The tutorial states the following:
/opt/mssql-tools/bin/to your PATH environment variable in a bash shell.
To make sqlcmd/bcp accessible from the bash shell for login sessions, modify your PATH in the ~/.bash_profile file with the following command:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
To make sqlcmd/bcp accessible from the bash shell for interactive/non-login sessions, modify the PATH in the ~/.bashrc file with the following command:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc source ~/.bashrc
This works, but it only affects that user's sessions, and only if they use bash.
Link the MS SQL tools into a location accessible to all users:
sudo ln -s /opt/mssql-tools/bin/* /usr/local/bin/
This could be in their
postinst script, which would make sense for installing an optional package.
Both methods are compliant with the File system Hierarchy Standard, which states:
Programs to be invoked by users must be located in the directory /opt/<package>/bin