Announcing Full Cross-Platform Support for the mssql-python Driver

Wait 5 sec.

After the successful release of Public Preview of mssql-python driver, we’re thrilled to announce a major milestone for the mssql-python driver: full support for all three major operating systems—Windows, macOS, and Linux. This release marks a significant leap forward in our mission to provide seamless, performant, and Pythonic connectivity to Microsoft SQL Server and the Azure SQL family. Try it here: mssql-python [alert type="important" heading=""]We invite Python community to join us and contribute in shaping the future of Python connectivity with SQL Server! [/alert]Linux Joins the Party With this release, Linux support is officially live, completing our cross-platform vision. Whether you're developing on Ubuntu, Red Hat or Debian, the mssql-python driver now offers native compatibility and a streamlined installation experience. This was made possible through deep integration work and iterative testing across distros. [alert type="note" heading="Note:"] Support for other distros (Alpine and SUSE Linux) is going to be released soon. Support for server editions of Linux OSs will also be releasing soon![/alert]Connection Pooling for All Platforms We’ve also rolled out Connection Pooling support across Windows, macOS, and Linux. This feature dramatically improves performance and scalability by reusing active database connections. It’s enabled by default and has already shown significant gains in internal benchmarks. [alert type="note" heading="Important:"]Our latest performance benchmark results show mssql-python outperforming pyodbc by up to 2.2× across core SQL operations, fetch patterns, and connection pooling—stay tuned for a deep dive into the numbers and what’s driving this performance leap in our upcoming blogs! [/alert]EntraID Support for MacOS and LinuxEntraID authentication is now fully supported on MacOS and Linux but with certain limitations as mentioned in the table:Authentication MethodmacOS/Linux SupportNotesActiveDirectoryPassword✅ YesUsername/password-based authenticationActiveDirectoryInteractive❌ NoOnly works on WindowsActiveDirectoryMSI (Managed Identity)✅ YesFor Azure VMs/containers with managed identityActiveDirectoryServicePrincipal✅ YesUse client ID and secret or certificateActiveDirectoryIntegrated❌ NoOnly works on Windows (requires Kerberos/SSPI)[alert type="note" heading="Note:"] ActiveDirectoryInteractive for Linux and MacOS will be supported in future releases of the driver. Please stay tuned!  [/alert]Unified Codebase, Smarter Engineering Behind the scenes, we’ve unified the mssql-python driver’s codebase across platforms. This includes hardened DDBC bindings using smart pointers for better memory safety and maintainability. It will become easier for the community members to help us grow this driver. These efforts ensure that the driver behaves consistently across environments and is easier to maintain and extend.Backward Compatibility with Python ≥ 3.10 All three platforms now support Python versions starting from 3.10, ensuring backward compatibility and broader adoption. Whether you're running legacy scripts or modern workloads, the driver is ready to support your stack. Seamless Installation Thanks to our recent work on packaging and dependency management, installing the mssql-python driver is now simpler than ever. Users can get started with a single pip install command—no admin privileges, no pre-installed driver manager is required.Windows and Linux: mssql-python can be installed with pip:pip install mssql-pythonMacOS: For MacOS, the user must install openssl before mssql-python can be installed with pip:brew install opensslpip install mssql-pythonWho Benefits — Explained by ScenarioAudienceHow They BenefitScenarioPython DevelopersSeamless setup and consistent behavior across Windows, macOS, and LinuxA developer working on a cross-platform data ingestion tool can now use the same driver codebase without OS-specific tweaks.Data Engineers & AnalystsConnection pooling and EntraID support improve performance and securityA data engineer running ETL jobs on Azure VMs can authenticate using managed identity and benefit from faster connection reuse.Open Source ContributorsUnified codebase makes it easier to contribute and maintainA contributor can now submit a patch without worrying about platform-specific regressions.Enterprise TeamsBackward compatibility and secure authentication optionsA team migrating legacy Python 3.10 scripts to Azure SQL can do so without rewriting authentication logic.PyODBC UsersFrictionless migration path to a modern, actively maintained driverA team using PyODBC can switch to mssql-python with minimal changes and gain performance, security, and cross-platform benefits.Why It Matters — Impact HighlightsImpact AreaWhy It MattersReal-World ValueCross-Platform DevelopmentEliminates OS-specific workaroundsTeams can standardize their SQL connectivity stack across dev, test, and prod environments.Enterprise ReadinessEntraID support and connection pooling are built-inOrganizations can deploy secure, scalable apps with minimal configuration.Community GrowthEasier onboarding and contribution pathwaysNew contributors can quickly understand and extend the driver, accelerating innovation.Performance & ScalabilityConnection reuse reduces latency and resource usageApps with high query volumes see measurable performance improvements.Migration EnablementSupports drop-in replacement for PyODBC and other driversDevelopers can modernize their stack without rewriting business logic.What's Next Here’s a sneak peek at what we’re working on for upcoming releases:  Linux Support – additional distros (Alpine and SUSE) will be supported in next few releases.  Support for Bulk Copy for accelerated data transfer Support for complex SQL Server data types  Try It and Share Your Feedback! Ready to test the latest features? We invite you to:  Try it out: Check-out the mssql-python driver and integrate it into your projects.  Share your thoughts: Open issues, suggest features, and contribute to the project.  Join the conversation: GitHub Discussions | SQL Server Tech Community. [alert type="tip" heading="Use Python Driver with Free Azure SQL Database"]You can use the Python Driver with the free version of Azure SQL Database!✅ Deploy Azure SQL Database for free✅ Deploy Azure SQL Managed Instance for freePerfect for testing, development, or learning scenarios without incurring costs.[/alert] We look forward to your feedback and collaboration!