License
Configure how FastBCP retrieves and uses its license file.
License Parameter
Use the --license parameter to specify the location or content of your FastBCP license.
By default, FastBCP will try to use the license file named FastBCP.lic in the same directory as the FastBCP executable. You can specify a custom license file using the --license parameter.
License Sources
FastBCP supports multiple ways to provide a license:
1. File Path
Specify a custom license file path:
- Windows
- Linux
.\FastBCP.exe `
...
--license "C:\licenses\FastBCP.lic" `
...
./FastBCP \
...
--license "/path/to/licenses/FastBCP.lic" \
...
2. HTTP(S) Endpoint
Retrieve the license from a remote URL where you put the license content and distribute it using https :
- Windows
- Linux
.\FastBCP.exe `
...
--license "https://licenseserve.yourdomain.lan/fastbcp.lic" `
...
./FastBCP \
...
--license "https://licenseserve.yourdomain.lan/fastbcp.lic" \
...
3. License Content (Inline)
Provide the license content directly. Using a variable or environment variable is recommended. Usefull for Docker or Lambda deployment:
- Windows
- Linux
# Using environment variable
$env:FASTBCP_LICENSE = "LICENSE_CONTENT_HERE"
.\FastBCP.exe `
...
--license $env:FASTBCP_LICENSE `
...
# Using variable
$license = Get-Content "C:\licenses\FastBCP.lic" -Raw
.\FastBCP.exe `
...
--license $license `
...
# Using environment variable
export FASTBCP_LICENSE="LICENSE_CONTENT_HERE"
./FastBCP \
...
--license "$FASTBCP_LICENSE" \
...
# Using variable
license=$(cat /path/to/licenses/FastBCP.lic)
./FastBCP \
...
--license "$license" \
...
Syntax:
- Long form only:
--license "<path_or_content>"
Complete Example
Here's a complete example using a license from a remote server with parallel export:
- Windows
- Linux
.\FastBCP.exe `
--connectiontype pgsql `
--server "localhost:15432" `
--database "tpch10" `
--user "FastUser" `
--password "FastPassword" `
--query "SELECT * FROM dbo.orders" `
--directory "D:\temp" `
--fileoutput "pgsql_orders.parquet" `
--parallelmethod DataDriven `
--distributekeycolumn "YEAR(o_orderdate)" `
--paralleldegree 7 `
--merge false `
--runid "pgsql_to_parquet_parallel_datadriven" `
--license "//SharedUnc/licenses/fastbcp/fastbcp.lic"
./FastBCP \
--connectiontype pgsql \
--server "localhost:15432" \
--database "tpch10" \
--user "FastUser" \
--password "FastPassword" \
--query "SELECT * FROM dbo.orders" \
--directory "/temp" \
--fileoutput "pgsql_orders.parquet" \
--parallelmethod DataDriven \
--distributekeycolumn "YEAR(o_orderdate)" \
--paralleldegree 7 \
--merge false \
--runid "pgsql_to_parquet_parallel_datadriven" \
--license "//SharedUnc/licenses/fastbcp/fastbcp.lic"
This example:
- Retrieves the license from a remote unc path
- Connects to a PostgreSQL database
- Exports orders data using DataDriven parallel method with 7 threads
- Uses a YEAR expression on the distribute key column
- Keeps distributed files separate (merge=false)