librarian-mysql-storage

    1.0.1 • Public • Published

    Librarian Mysql Storage

    Note: This version of librarian-mysql-storage is compatible with librarian 2.0.0 and above.

    Warning: Storing files in MYSQL is usually not the greatest idea. We recommend using something like a filesystem or Amazon S3 for better storage

    Installation

    $ npm install librarian-mysql-storage
    

    Usage

    var express = require('express')
    var librarian = require('librarian')
    var MysqlStorage = require('librarian-mysql-storage')
    var storage = new MysqlStorage(options) // see below
     
    var app = express()
    app.use('/files', librarian({
        storage: storage
    }))
     
    app.listen(8888, function(){
        console.log('app listening')
    })

    Options

    Options is an object containing any of the following options.

    host

    The host to connect to. Defaults to localhost.

    port

    The port to connect to. Defaults to 3306.

    database

    The database name. Defaults to librarian.

    table

    The database table for the file records. If you use the writeSchema option, one will be created for you with this name. But if you already have a table, make sure it has the correct format.

    Field Type Notes
    name VARCHAR(150) Will store file names (150 is probably long enough, right?)
    data MEDIUMBLOB Actual file storage (will store 16MB files)

    If you need to store larger files, use LONGBLOB to store files up to 4GB

    user

    The user to connect as. Defaults to librarian.

    password (required)

    The password to use. Use '' if you don't want a password.

    writeSchema

    Should this plugin attempt to create the database/table for you? If you set this to true, it should fail gracefully if the database/table already exists.

    Defaults to false.

    connectTimeout

    The amount of milliseconds init() will wait for MySQL to come online before failing.

    Defaults to 45 * 1000 (milliseconds).

    retryWaitTime

    The amount of milliseconds init() will wait between connection attempts.

    Defaults to 1000 (milliseconds).

    Keywords

    none

    Install

    npm i librarian-mysql-storage

    DownloadsWeekly Downloads

    6

    Version

    1.0.1

    License

    ISC

    Last publish

    Collaborators

    • joshwillik