A curious mind knows no limits. I was exploring the public preview of SQL Server on Linux to figure out what all the packages get installed during a complete installation (SQL Server, SQL Server Tools, and ODBC) of SQL Server on Linux. I ended up with a couple of interesting findings and thought to write blogs so that I can share my findings with a wider audience.
In this post, we will see what all the packages and files get installed during the SQL Server installation on Linux (ubutnu) but before we start, let’s first understand a couple of terminologies;
What is package in Linux distributions?
A “package” refers to a compressed file archive containing a list of files that come with a particular application. The package manager opens the archive and installs the files to the location the package specifies. The package manager remains aware of which files belong to which packages, as well as a list of any other packages that are dependencies. In case of uninstall a package, the package manager knows exactly which files on the system belong to it.
What is dpkg?
dpkg or the Debian package manager is a package manager for Debian-based systems. It can install, remove, build, and provide information about “.deb” packages, but unlike other package management systems, it cannot automatically download and install packages or their dependencies.
Let’s check out what all the SQL packages have been installed on your Ubuntu system by running the following command.
Syntax: dpkg -l | grep sql
Now, let’s figure out what all the files get installed by each package.
mssql-server package
- Execute the below command to list down the files which were installed by mssql-server package
Syntax: dpkg -L mssql-server
sachit@SQLUBUNTULINUX:~$ dpkg -L mssql-server /. /lib /lib/systemd /lib/systemd/system /lib/systemd/system/mssql-server-telemetry.service /lib/systemd/system/mssql-server.service /opt /opt/mssql /opt/mssql/lib /opt/mssql/lib/system.sfp /opt/mssql/lib/libsqltelemetry.so /opt/mssql/lib/sqlservr.sfp /opt/mssql/lib/mssql-conf /opt/mssql/lib/mssql-conf/mssqlsettings.py /opt/mssql/lib/mssql-conf/mssqlconfhelper.py /opt/mssql/lib/mssql-conf/mssql-conf.py /opt/mssql/lib/mssql-conf/collations.txt /opt/mssql/lib/mssql-conf/mssqlsettingsmanager.py /opt/mssql/lib/mssql-conf/set-collation.sh /opt/mssql/lib/mssql-conf/sapassword.sh /opt/mssql/lib/sqlpackage.sfp /opt/mssql/lib/system.netfx.sfp /opt/mssql/lib/system.common.sfp /opt/mssql/lib/system.certificates.sfp /opt/mssql/lib/libunwind.so.8 /opt/mssql/bin /opt/mssql/bin/sqlservr /opt/mssql/bin/mssql-conf /opt/mssql/bin/sqlservr-telemetry /opt/mssql/bin/sqlpackage /opt/mssql/bin/compress-dump.sh /opt/mssql/bin/sqlservr-setup /opt/mssql/bin/generate-core.sh /usr /usr/share /usr/share/doc /usr/share/doc/mssql-server /usr/share/doc/mssql-server/copyright /usr/share/doc/mssql-server/THIRDPARTYNOTICES.TXT.gz /usr/share/doc/mssql-server/LICENSE.TXT.gz /usr/share/doc/mssql-server/changelog.Debian.gz /usr/share/man /usr/share/man/man1 /usr/share/man/man1/sqlpackage.1.gz /usr/share/man/man1/mssql-conf.1.gz /usr/share/man/man1/sqlservr.1.gz
mssql-tools package
- To list down the files which were installed by mssql-tool package, kindly run the following command;
Syntax: dpkg -L mssql-tools
sachit@SQLUBUNTULINUX:~$ dpkg -L mssql-tools /. /usr /usr/share /usr/share/doc /usr/share/doc/mssql-tools /usr/share/doc/mssql-tools/THIRDPARTYNOTICES.txt /usr/share/doc/mssql-tools/LICENSE.txt /usr/bin /opt /opt/mssql-tools /opt/mssql-tools/share /opt/mssql-tools/share/resources /opt/mssql-tools/share/resources/en_US /opt/mssql-tools/share/resources/en_US/BatchParserGrammar.llr /opt/mssql-tools/share/resources/en_US/SQLCMD.rll /opt/mssql-tools/share/resources/en_US/bcp.rll /opt/mssql-tools/share/resources/en_US/BatchParserGrammar.dfa /opt/mssql-tools/bin /opt/mssql-tools/bin/bcp-14.0.1.246 /opt/mssql-tools/bin/sqlcmd-14.0.1.246 /usr/bin/bcp /usr/bin/sqlcmd sachit@SQLUBUNTULINUX:~$
msodbcsql package
- The same way execute the below mentioned command to list down the files which were installed by msodbcsql package
Syntax: dpkg -L msodbcsql
sachit@SQLUBUNTULINUX:~$ dpkg -L msodbcsql /. /opt /opt/microsoft /opt/microsoft/msodbcsql /opt/microsoft/msodbcsql/etc /opt/microsoft/msodbcsql/etc/odbcinst.ini /opt/microsoft/msodbcsql/include /opt/microsoft/msodbcsql/include/msodbcsql.h /opt/microsoft/msodbcsql/share /opt/microsoft/msodbcsql/share/resources /opt/microsoft/msodbcsql/share/resources/en_US /opt/microsoft/msodbcsql/share/resources/en_US/msodbcsqlr13.rll /opt/microsoft/msodbcsql/lib64 /opt/microsoft/msodbcsql/lib64/libmsodbcsql-13.0.so.1.0 /usr /usr/share /usr/share/doc /usr/share/doc/msodbcsql /usr/share/doc/msodbcsql/LICENSE.txt sachit@SQLUBUNTULINUX:~$
Knowing all the installed files by the SQL packages can give you better understanding of SQL Server on Linux. I hope you relish it!