Support #379
Updated by Daniel Curtis over 10 years ago
h2. Install MariaDB h3. Install MariaDB from pkg Install MariaDB: <pre> pkg install mariadb55-{server,client} </pre> h3. Build MariaDB from Source * Install MariaDB, this will also build the MariaDB client: <pre> cd /usr/ports/databases/mariadb55-server/ make config ; make install clean rehash </pre> h2. Configure MariaDB * Edit @rc.conf@ to start MariaDB at boot: <pre> vi /etc/rc.conf </pre> * Add @mysql_enable@ > mysql_enable="YES" * Manually start MariaDB: <pre> service mysql-server start </pre> Setup grant tables, make sure to have the MariaDB server running since mysql_install_db assumes its running from here: <pre> cd /usr/local/ mysql_install_db --user=mysql </pre> * Configure the MariaDB server root password: <pre> mysql_secure_installation </pre> *# (Optional) Configure MariaDB server root password manually: <pre> mysqladmin -u root password 'appleton' mysqladmin -u root -p -h firefly.scc.local password 'appleton' </pre> *# (Optional) Grant root permission to connect remotely: <pre> mysql -u root -p mysql> grant all privileges on *.* to 'root'@'%' identified by 'appleton' with grant option; mysql> exit; </pre> h2. Configure MariaDB Server Use the provided @my-medium.cnf@ config file and edit for using InnoDB tables: The output from “my_print_defaults –help” implies my-medium.cnf should copied to /etc/my.cnf, but I’ll use the MySQL convention I’ve learned until I know different. <pre> cp /usr/local/share/mysql/my-medium.cnf /var/db/mysql/my.cnf vi /var/db/mysql/my.cnf </pre> > #! Uncomment the following if you are using InnoDB tables > innodb_data_home_dir = /var/db/mysql > innodb_data_file_path = ibdata1:10M:autoextend > innodb_log_group_home_dir = /var/db/mysql > #! You can set .._buffer_pool_size up to 50 - 80 % > #! of RAM but beware of setting memory usage too high > innodb_buffer_pool_size = 16M > innodb_additional_mem_pool_size = 2M > #! Set .._log_file_size to 25 % of buffer pool size > innodb_log_file_size = 5M > innodb_log_buffer_size = 8M > innodb_flush_log_at_trx_commit = 1 > innodb_lock_wait_timeout = 50 * Restart MariaDB: # service mysql-server restart * And finally do a basic test to confirm things are basically working: <pre> mysql -u root -p </pre> > MariaDB [(none)]> show databases; > MariaDB [(none)]> exit; > Bye