SQL Server team has been adding support for "current" Linux distributions at fast clip last few months. The team announced support for RHEL 8 and Ubuntu 18.04 for SQL Server 2019 over last quarter. The team is happy to announce that SQL Server 2017 has now added support for Red Hat Enterprise Linux (RHEL) 8 and Ubuntu 18.04. You can refer to following links for additional information.
As one may have worked with SQL Server on Linux, they may have introduced to certain storage and IO flush related configurations due to unavailability of FUA (Forced Unit Access) functionality in user mode of Linux ecosystem. You can read extremely good technical details at following blog written by Bob Dorr, a lead in SQL Server product group.
If you see the “Safety and Performance” section in the blog, it outlines the various configurations you can have depending on kernel version and storage capabilities.
We are glad to say that Red Hat engineering team have introduced the FUA capability in user mode for XFS filesystem starting with RHEL 8. This means for SQL Server 2017 on RHEL 8, recommended configuration is following.
If using XFS filesystemwith FUA-capable storage for database files then,
Enable trace flag 3979
Set control.writethrough (a mssql-conf configuration option) to 1.
Set control.alternatewritethrough (a mssql-conf configuration option) to 0.
Of course, if EXT4 filesystem is in use then the blog should be reviewed thoroughly to see how to get best performance based on underlying storage configuration.
We hope you give SQL Server 2017 on Red Hat 8 try and let us know what you think.
Mike Habben (Principal Software Engineering Manager)