#Installation
PhoenixmlDb is distributed as NuGet packages. Choose the packages that match your deployment scenario.
#Package Options
|
Package |
Description |
Use Case |
|---|---|---|
|
|
Core embedded database |
Single-application embedded use |
|
|
gRPC server |
Multi-client server deployment |
|
|
Client SDK |
Connect to PhoenixmlDb server |
|
|
Clustering support |
Distributed high-availability |
#Embedded Installation
For embedded use in a single application:
.NET CLI
dotnet add package PhoenixmlDbPackage Manager
Install-Package PhoenixmlDbPackageReference
<PackageReference Include="PhoenixmlDb" Version="1.0.0" />#Server Installation
For multi-client server deployment:
# Server package
dotnet add package PhoenixmlDb.Server
# Client SDK (for client applications)
dotnet add package PhoenixmlDb.Client#Cluster Installation
For distributed deployment with high availability:
dotnet add package PhoenixmlDb.Cluster#Platform Requirements
#Windows
-
Windows 10 version 1607 or later
-
Windows Server 2016 or later
-
.NET 10.0 runtime
#Linux
-
Ubuntu 20.04, 22.04, or 24.04
-
Debian 11 or 12
-
RHEL 8 or 9
-
.NET 10.0 runtime
-
liblmdb(usually included, or install via package manager)
# Ubuntu/Debian
sudo apt-get install liblmdb-dev
# RHEL/CentOS
sudo dnf install lmdb-devel#macOS
-
macOS 12 (Monterey) or later
-
.NET 10.0 runtime
-
lmdbvia Homebrew (optional, native library included)
brew install lmdb#Verifying Installation
Create a simple test to verify the installation:
using PhoenixmlDb;
// Create a temporary database
var tempPath = Path.Combine(Path.GetTempPath(), "phoenixml-test");
using var db = new XmlDatabase(tempPath);
// Create a container
var test = db.CreateContainer("test");
// Store and retrieve a document
test.PutDocument("hello.xml", "<greeting>Hello, PhoenixmlDb!</greeting>");
var doc = test.GetDocument("hello.xml");
Console.WriteLine(doc);
// Output: <greeting>Hello, PhoenixmlDb!</greeting>
// Cleanup
Directory.Delete(tempPath, recursive: true);
Console.WriteLine("Installation verified successfully!");#Build from Source
To build PhoenixmlDb from source:
# Clone the repository
git clone https://github.com/endpointsystems/phoenixml.git
cd phoenixml
# Build
dotnet build
# Run tests
dotnet test
# Create packages
dotnet pack -c Release#Next Steps
|
Learn Basics |
Configure |
Deploy |
|---|---|---|
|
Quick StartLearn the basics with hands-on examples. |
ConfigurationConfigure storage and performance options. |
DeploymentDeploy in server or cluster mode. |