> ## Documentation Index
> Fetch the complete documentation index at: https://docs.flipsidecrypto.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Mounting Shares

> Add Flipside data shares to your Snowflake account and start querying

Once you have access to a Flipside data share (free or premium), you'll need to "mount" it by
creating a database from the share.

## Prerequisites

Before mounting a share:

✅ Snowflake account in AWS US-EAST-1 <br /> ✅ Enterprise Edition or higher <br /> ✅ Access to the
share (via Marketplace or approval) <br /> ✅ ACCOUNTADMIN or CREATE DATABASE privileges <br />

## Finding your share

<Steps>
  <Step title="Log in to Snowflake">
    Log in to your Snowflake account (web UI or SnowSQL)
  </Step>

  <Step title="Navigate to Data">
    Click **Data** in the left sidebar, then select the **Private Sharing** tab
  </Step>

  <Step title="Locate the Flipside share">
    Look for shares from **Flipside Crypto**

    You should see one or more shares listed, such as:

    * `Ethereum Onchain Core Data` (free)
    * `Ethereum Premium Onchain Data` (premium)
    * `Solana Onchain Core Data` (free)
    * Etc.
  </Step>
</Steps>

## Mounting the share

<Steps>
  <Step title="Open the share">
    1. Click on the Flipside share you want to mount
    2. You'll see share details and available schemas
  </Step>

  <Step title="Create database from share">
    1. Click **Get**
    2. You'll see a dialog to configure the database

    <img src="https://mintcdn.com/flipside-3887e776/D6PqUXiFjckfMay6/images/data-shares/mounting_data_share.png?fit=max&auto=format&n=D6PqUXiFjckfMay6&q=85&s=b45c6c846a7041ea6ae9d61e0a0cc82e" style={{width: "450px", height: "auto"}} alt="Mounting a data share" width="651" height="866" data-path="images/data-shares/mounting_data_share.png" />
  </Step>

  <Step title="Name your database">
    Choose a database name:

    **Option 1: Use the default name** (recommended)

    * Usually `[BLOCKCHAIN]_ONCHAIN_CORE_DATA` or `[BLOCKCHAIN]`
    * Example: `SOLANA_ONCHAIN_CORE_DATA`, `SOLANA`

    **Option 2: Choose a custom name**

    * Use lowercase and underscores
    * Make it descriptive
    * Example: `flipside_ethereum`, `fs_solana_full`

    <Card title="Custom Database Name" img="https://mintcdn.com/flipside-3887e776/D6PqUXiFjckfMay6/images/data-shares/snowflake_custom_db.jpg?fit=max&auto=format&n=D6PqUXiFjckfMay6&q=85&s=21b303e9cf4e5ee2a261d222b79d8365" width="557" height="233" data-path="images/data-shares/snowflake_custom_db.jpg">
      Use the default name for easier reference to documentation and examples.
    </Card>
  </Step>

  <Step title="Create the database">
    1. Click **Get**
    2. Wait for confirmation (usually instant)
    3. The database will appear in your database list
  </Step>
</Steps>

## Verifying the mount

After mounting, verify the share is accessible:

```sql theme={null}
-- Switch to the new database
USE DATABASE SOLANA_ONCHAIN_CORE_DATA;

-- List available schemas
SHOW SCHEMAS;

-- Expected output (for core shares):
-- CORE
-- INFORMATION_SCHEMA

-- Expected output (for premium shares):
-- CORE
-- DEFI
-- NFT
-- PRICE
-- STATS
-- INFORMATION_SCHEMA

-- Query a sample table
SELECT *
FROM solana_onchain_core_data.core.fact_blocks
ORDER BY block_id DESC
LIMIT 5;
```

If queries run successfully, your share is mounted correctly!

## Managing multiple shares

You can mount shares for multiple blockchains:

```sql theme={null}
-- List all databases
SHOW DATABASES;

-- You might see:
-- ETHEREUM
-- SOLANA_ONCHAIN_CORE_DATA
-- ARBITRUM
-- Etc.

-- Query across multiple chains
SELECT 'Ethereum' AS chain, COUNT(*) AS block_count
FROM ETHEREUM_ONCHAIN_CORE_DATA.core.fact_blocks
WHERE block_timestamp >= CURRENT_DATE - 1

UNION ALL

SELECT 'Solana' AS chain, COUNT(*) AS block_count
FROM SOLANA_ONCHAIN_CORE_DATA.core.fact_blocks
WHERE block_timestamp >= CURRENT_DATE - 1;
```

## Granting access to other users

If you want other users in your Snowflake account to access the shared database:

```sql theme={null}
-- Grant usage on the database
GRANT USAGE ON DATABASE ETHEREUM_ONCHAIN_CORE_DATA TO ROLE analyst_role;

-- Grant usage on all schemas
GRANT USAGE ON ALL SCHEMAS IN DATABASE ETHEREUM_ONCHAIN_CORE_DATA TO ROLE analyst_role;

-- Grant select on all tables
GRANT SELECT ON ALL TABLES IN SCHEMA ETHEREUM_ONCHAIN_CORE_DATA.core TO ROLE analyst_role;
GRANT SELECT ON ALL TABLES IN SCHEMA ETHEREUM_ONCHAIN_CORE_DATA.defi TO ROLE analyst_role;
-- Repeat for other schemas as needed
```

## Unmounting a share

If you need to remove a mounted share:

```sql theme={null}
-- Drop the database
DROP DATABASE IF EXISTS ETHEREUM_ONCHAIN_CORE_DATA;
```

<Warning>
  This only removes the database from your account—it doesn't affect the underlying share. You can
  re-mount it anytime by following the mounting steps again.
</Warning>

## Common issues

<AccordionGroup>
  <Accordion title="Share not appearing in Private Sharing" icon="eye-slash">
    **Possible causes:**

    * Premium share request not yet approved
    * Wrong Snowflake account (check you're using the AWS US-EAST-1 account)
    * Share not yet granted by Flipside

    **Solution:**

    * For core shares: Contact [data-shares@flipsidecrypto.com](mailto:data-shares@flipsidecrypto.com) to verify your request
    * For premium shares: Wait for approval email or contact [data-shares@flipsidecrypto.com](mailto:data-shares@flipsidecrypto.com)
  </Accordion>

  <Accordion title="Permission denied when creating database" icon="lock">
    **Error:** `Insufficient privileges to operate on database`

    **Solution:**
    You need ACCOUNTADMIN or CREATE DATABASE privilege

    ```sql theme={null}
    -- As ACCOUNTADMIN, grant privileges
    GRANT CREATE DATABASE ON ACCOUNT TO ROLE your_role;
    ```
  </Accordion>

  <Accordion title="Can't query tables" icon="ban">
    **Error:** `Object does not exist` or `SQL access control error`

    **Possible causes:**

    * Database not properly mounted
    * Missing USAGE grants
    * Incorrect schema/table name

    **Solution:**

    ```sql theme={null}
    -- Verify database exists
    SHOW DATABASES LIKE 'ETHEREUM%';

    -- Verify schemas
    USE DATABASE ETHEREUM_ONCHAIN_CORE_DATA;
    SHOW SCHEMAS;

    -- Grant yourself usage
    GRANT USAGE ON DATABASE ETHEREUM_ONCHAIN_CORE_DATA TO ROLE your_role;
    ```
  </Accordion>

  <Accordion title="Data seems stale" icon="clock">
    **Issue:** Data hasn't updated recently

    **Check data freshness:**

    ```sql theme={null}
    SELECT MAX(block_timestamp) AS latest_block
    FROM ethereum_onchain_core_data.core.fact_blocks;
    ```

    See [Data Freshness](/snowflake-data-shares/data-freshness) for expected latencies.

    If data is significantly stale, contact [data-shares@flipsidecrypto.com](mailto:data-shares@flipsidecrypto.com)
  </Accordion>
</AccordionGroup>

## Next steps

<CardGroup cols={2}>
  <Card title="Query optimization" icon="gauge-high" href="/snowflake-data-shares/query-optimization">
    Write efficient queries for better performance
  </Card>

  <Card title="Use cases" icon="lightbulb" href="/snowflake-data-shares/use-cases">
    Example queries and common patterns
  </Card>

  <Card title="Data freshness" icon="clock" href="/snowflake-data-shares/data-freshness">
    Understand update schedules and latency
  </Card>

  <Card title="Schema reference" icon="book" href="/blockchain-data/schema-overview">
    Explore table structures and schemas
  </Card>
</CardGroup>
