building_mariadb_on_freebsd
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
building_mariadb_on_freebsd [2010/09/13 16:57] – k2patel | building_mariadb_on_freebsd [2017/07/02 02:05] – k2patel | ||
---|---|---|---|
Line 2: | Line 2: | ||
==== Getting Source ==== | ==== Getting Source ==== | ||
- | get source from [[http:// | + | |
- | extract to /// | + | |
+ | get source from [[http:// | ||
+ | extract to / | ||
==== Configure ==== | ==== Configure ==== | ||
- | **Modular configure** (usually you need to load plugins with my.cnf) | + | |
+ | |||
+ | Modular configure (usually you need to load plugins with my.cnf) i am using this one. | ||
<code bash> | <code bash> | ||
./configure --with-extra-charsets=all --localstatedir=/ | ./configure --with-extra-charsets=all --localstatedir=/ | ||
</ | </ | ||
- | |||
OR | OR | ||
- | **Build With Plugin** | + | Build With Plugin |
<code bash> | <code bash> | ||
./configure --with-extra-charsets=all | ./configure --with-extra-charsets=all | ||
Line 21: | Line 24: | ||
OR | OR | ||
- | **Static Build** as suggested by MariaDB wiki. | + | Static Build as suggested by MariaDB wiki. |
<code bash> | <code bash> | ||
./configure --prefix=/ | ./configure --prefix=/ | ||
Line 32: | Line 34: | ||
--with-zlib-dir=bundled --enable-local-infile | --with-zlib-dir=bundled --enable-local-infile | ||
</ | </ | ||
+ | Now run “make -j4” and “make install” – will install it on system. | ||
- | Now run "// | + | rc script |
- | ==== rc script ==== | + | You can simply use script provided with port version of mysql. |
- | You can simply use script provided with port version of mysql.\\ | + | |
Just in case if you dont have it, use below. | Just in case if you dont have it, use below. | ||
- | <code bash | / | + | | / |
#!/bin/sh | #!/bin/sh | ||
# | # | ||
# $FreeBSD: ports/ | # $FreeBSD: ports/ | ||
# | # | ||
+ | |||
# PROVIDE: mysql | # PROVIDE: mysql | ||
# REQUIRE: LOGIN | # REQUIRE: LOGIN | ||
# KEYWORD: shutdown | # KEYWORD: shutdown | ||
+ | |||
# | # | ||
# Add the following line to / | # Add the following line to / | ||
Line 61: | Line 63: | ||
# to mysqld_safe (default empty). | # to mysqld_safe (default empty). | ||
# | # | ||
+ | |||
. / | . / | ||
+ | |||
name=" | name=" | ||
rcvar=`set_rcvar` | rcvar=`set_rcvar` | ||
+ | |||
load_rc_config $name | load_rc_config $name | ||
+ | |||
: ${mysql_enable=" | : ${mysql_enable=" | ||
: ${mysql_limits=" | : ${mysql_limits=" | ||
: ${mysql_dbdir="/ | : ${mysql_dbdir="/ | ||
: ${mysql_args="" | : ${mysql_args="" | ||
+ | |||
mysql_user=" | mysql_user=" | ||
mysql_limits_args=" | mysql_limits_args=" | ||
Line 84: | Line 86: | ||
mysql_install_db="/ | mysql_install_db="/ | ||
mysql_install_db_args=" | mysql_install_db_args=" | ||
+ | |||
mysql_create_auth_tables() | mysql_create_auth_tables() | ||
{ | { | ||
Line 90: | Line 92: | ||
[ $? -eq 0 ] && chown -R ${mysql_user}: | [ $? -eq 0 ] && chown -R ${mysql_user}: | ||
} | } | ||
+ | |||
mysql_prestart() | mysql_prestart() | ||
{ | { | ||
Line 102: | Line 104: | ||
fi | fi | ||
} | } | ||
+ | |||
mysql_poststart() | mysql_poststart() | ||
{ | { | ||
Line 112: | Line 114: | ||
return 0 | return 0 | ||
} | } | ||
+ | |||
run_rc_command " | run_rc_command " | ||
- | </code> | + | Enable and Start |
+ | |||
+ | Final steps…. (remember i am using Modular configure) | ||
+ | | /etc/ | ||
+ | [mysqld] | ||
+ | ## | ||
+ | ## Load Plugins | ||
+ | ## To specify cutom plugin dir use line below. | ||
+ | ## plugin_dir=/ | ||
+ | ## | ||
+ | |||
+ | plugin-load=ha_xtradb.so | ||
+ | |||
+ | ## | ||
+ | ## General Optimization | ||
+ | ## | ||
+ | |||
+ | open-files-limit=1024 | ||
+ | local-infile | ||
+ | character-set-server=utf8 | ||
+ | connect-timeout=60 | ||
+ | key_buffer_size=1M | ||
+ | sort_buffer=256K | ||
+ | max_heap_table_size=1M | ||
+ | |||
+ | ## | ||
+ | ## InnoDB Configuration. | ||
+ | ## | ||
+ | |||
+ | innodb_buffer_pool_size = 16M | ||
+ | innodb_additional_mem_pool_size = 2M | ||
+ | innodb_data_file_path = ibdata1: | ||
+ | innodb_log_file_size = 5M | ||
+ | innodb_log_buffer_size = 8M | ||
+ | innodb_log_files_in_group=2 | ||
+ | innodb_flush_log_at_trx_commit = 1 | ||
+ | innodb_lock_wait_timeout = 50 | ||
+ | innodb_file_per_table | ||
+ | |||
+ | ## | ||
+ | ## Setting Log / Bin expiry and name | ||
+ | ## | ||
+ | |||
+ | expire_logs_days=5 | ||
+ | log-bin=mysqld-bin | ||
+ | log-bin-trust-function-creators=1 | ||
+ | datadir=/ | ||
+ | relay-log=freebsd-relay-bin | ||
+ | binlog-ignore-db=mysql, | ||
+ | |||
+ | ## | ||
+ | ## Replication Options | ||
+ | ## | ||
+ | |||
+ | server-id=0 | ||
+ | |||
+ | # | ||
+ | # | ||
+ | # | ||
+ | # | ||
+ | # | ||
+ | |||
+ | # | ||
+ | # | ||
+ | # | ||
+ | # | ||
+ | # | ||
+ | Enabled it in rc.conf | ||
+ | |||
+ | echo ' | ||
+ | Now start it using. | ||
+ | |||
+ | / | ||
+ | Error | ||
+ | |||
+ | If you get any error related to DB not found (usually get created on first RUN). | ||
+ | mysql_install_db --datadir=/ | ||
+ | ENJOY!! Optimized Version of MySQL MariaDB |
building_mariadb_on_freebsd.txt · Last modified: 2020/08/10 02:35 by 127.0.0.1