You can run mysqld directly from the source directory (without doing make install).

## Starting mysqld after build on Windows

On Windows, the data directory is produced during the build.

The simplest way to start database from the command line is:

1. Go to the directory where mysqld.exe is located (subdirectory sql\Debug or sql\Relwithdebinfo of the build directory)
2. From here, execute
mysqld.exe --datadir=..\data --console

As usual, you can pass other mysqld parameters on the command line, or store them in a my.ini configuraton file and pass --defaults-file=path\to\my.ini

The default search path on Windows for the my.cnf file is:

• GetSystemWindowsDirectory()
• GetWindowsDirectory()
• C:\
• Directory where the executable is located

## Starting mysqld after build on Unix

Copy the following to your '~/.my.cnf' file.

There are two lines you have to edit: 'data=' and 'language='. Be sure to change them to match your environment.

# Example mysql config file.
# You can copy this to one of:
# /etc/my.cnf to set global options,
# /mysql-data-dir/my.cnf to get server specific options or
# ~/my.cnf for user specific options.
#
# One can use all long options that the program supports.
# Run the program with --help to get a list of available options

# This will be passed to all mysql clients
[client]
#port=3306
#socket=/tmp/mysql.sock

# Here is entries for some specific programs
# The following values assume you have at least 32M ram

# The MySQL server
[mysqld]
#port=3306
#socket=/tmp/mysql.sock
temp-pool

# The following three entries caused mysqld 10.0.1-MariaDB (and possibly other versions) to abort...
# skip-locking
# set-variable  = key_buffer=16M

loose-innodb_data_file_path = ibdata1:1000M
gdb

######### Fix the two following paths

# Where you want to have your database
data=/path/to/data/dir

language=/path/to/src/dir/sql/share/english

[mysqldump]
quick
set-variable = max_allowed_packet=16M

[mysql]
no-auto-rehash

[myisamchk]
set-variable= key_buffer=128M

With the above file in place, go to your MariaDB source directory and execute:

./scripts/mysql_install_db --srcdir=$PWD --datadir=/path/to/data/dir --user=$LOGNAME

Above '$PWD' is the environment variable that points to your current directory. If you added datadir to your my.cnf, you don't have to give this option above. Also above, --user=$LOGNAME is necessary when using msqyld 10.0.1-MariaDB (and possibly other versions)

Now you can start mysqld in the debugger:

cd sql
ddd mysqld &

Or start mysqld on its own:

cd sql
./mysqld &

After starting up mysqld using one of the above methods (with the debugger or without), launch the client (as root if you don't have any users setup yet).

../client/mysql

## Using a storage engine plugin

The simplest case is to compile the storage engine into MariadB:

configure --with-plugin-<plugin_name>

Another option is to point mysqld to the storage engine directory:

mysqld --plugin-dir=source-dir-path/storage/connect/.libs
{"extraction_info": {"found_math": true, "script_math_tex": 0, "script_math_asciimath": 0, "math_annotations": 0, "math_alttext": 0, "mathml": 0, "mathjax_tag": 0, "mathjax_inline_tex": 1, "mathjax_display_tex": 0, "mathjax_asciimath": 1, "img_math": 0, "codecogs_latex": 0, "wp_latex": 0, "mimetex.cgi": 0, "/images/math/codecogs": 0, "mathtex.cgi": 0, "katex": 0, "math-container": 0, "wp-katex-eq": 0, "align": 0, "equation": 0, "x-ck12": 0, "texerror": 0, "math_score": 0.4056595265865326, "perplexity": 12379.616211468992}, "config": {"markdown_headings": true, "markdown_code": true, "boilerplate_config": {"ratio_threshold": 0.18, "absolute_threshold": 10, "end_threshold": 15, "enable": true}, "remove_buttons": true, "remove_image_figures": true, "remove_link_clusters": true, "table_config": {"min_rows": 2, "min_cols": 3, "format": "plain"}, "remove_chinese": true, "remove_edit_buttons": true, "extract_latex": true}, "warc_path": "s3://commoncrawl/crawl-data/CC-MAIN-2014-10/segments/1393999651825/warc/CC-MAIN-20140305060731-00066-ip-10-183-142-35.ec2.internal.warc.gz"}