Database
This is a list of the minimum expected tables with their columns:
Tables
jobs
Table
name
label
job_grades
Table
job_name
grade
label
licenses
Table
type
label
owned_vehicles
Table
owner
-varchar(64) NOT NULL
plate
type
model
(Optional, can be overriden viadatabase.custom.columns.vehicles.model
config option)
users
Table
id
-int(11) NOT NULL AUTO_INCREMENT
identifier
-varchar(64) NOT NULL
group
firstname
lastname
dateofbirth
job
job_grade
sex
height
phone_number
visum
(Optional, can be overriden viadatabase.custom.columns.user.visum
config option)playtime
(Optional, can be overriden viadatabase.custom.columns.user.playtime
config option)
user_licenses
Table
type
owner
-varchar(64) NOT NULL
Database/Table Collation
You must ensure that the collation of your database, tables and columns is the same!
A difference in collation between tables can occur, e.g., when the database server has been switched. The database server defines the "default collation" used unless otherwise specified. If the collation is not the same across at least the tables listed below, FiveNet's database migrations have a very high likely hood of failing due to that.
utf8mb4_general_ci
and the charset utf8bm4
.To check the collation of your database tables, you can use the following SQL queries:
USE `__YOUR_DATABASE_NAME_HERE__`;
SHOW TABLE STATUS;
Changing the database, table, column Collation
I personally have used How to easily convert utf8 tables to utf8mb4 in MySQL 5.5 - Database Administrators Stack Exchange, but, as pointed out by the comments, with SET foreign_key_checks = 0;
before you would run the generated queries and SET foreign_key_checks = 1;
after you ran the generated queries.
Creating Database User
These are sample queries to create a database user named fivenet
with "full" access to the database (database_name
).
You are expected to change the password in the first query and specify the right database name in the GRANT
query second line.
CREATE USER 'fivenet'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON `database_name`.* TO 'fivenet'@'%';