A lightweight and efficient [image board](https://en.wikipedia.org/wiki/Imageboard). See [TinyIB Installations](https://gitlab.com/tslocum/tinyib/wikis/Home) for demos.
**Got database? Get speed.** Use [MySQL](https://mysql.com), [PostgreSQL](https://www.postgresql.org) or [SQLite](https://sqlite.org) for an efficient set-up able to handle high amounts of traffic.
**Not looking for an image board script?** TinyIB is able to allow new threads without requiring an image, or even disallow images entirely. See the [Text Board Mode](https://gitlab.com/tslocum/tinyib/wikis/Text-Board-Mode) wiki page for instructions.
- When setting ``TINYIB_DBMODE`` to ``flatfile``, note that all post and ban data are exposed as the database is composed of standard text files. Access to ./inc/flatfile/ should be denied.
- When setting ``TINYIB_DBMODE`` to ``pdo``, note that only the MySQL and PostgreSQL databases drivers have been tested. Theoretically it will work with any applicable driver, but this is not guaranteed. If you use an alternative driver, please report back.
- Install [mediainfo](https://mediaarea.net/en/MediaInfo) and [ffmpegthumbnailer](https://code.google.com/p/ffmpegthumbnailer/). On Ubuntu, run ``sudo apt-get install mediainfo ffmpegthumbnailer``.
TinyIB includes a database migration tool, which currently only supports migrating from flat file to MySQL. While the migration is in progress, visitors will not be able to create or delete posts.
1. Edit **settings.php**
- Ensure ``TINYIB_DBMODE`` is still set to ``flatfile``.
- Set ``TINYIB_DBMIGRATE`` to ``true``.
- Configure all MySQL-related settings.
2. Open the management panel.
3. Click **Migrate Database**
4. Click **Start the migration**
5. If the migration was successful:
- Edit **settings.php**
- Set ``TINYIB_DBMODE`` to ``mysqli``.
- Set ``TINYIB_DBMIGRATE`` to ``false``.
- Click **Rebuild All** and ensure the board still looks the way it should.
If there was a warning about AUTO_INCREMENT not being updated, you'll need to update it manually via a more privileged MySQL user. Run the following query for one or both of the tables, dependant of the warnings you were issued:
``ALTER TABLE (table name) AUTO_INCREMENT = (value to be set)``