欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Compiling & Debugging MariaDB(and MySQL) in Eclipse_MySQL

程序员文章站 2022-05-24 16:13:02
...
MariaDB

Introduction:

To run MariaDB from Eclipse we will actually create and install the tar.gz package resulting from compilation(SeePart 2) in a separate directory, this will allow us to have MariaDB cleanly installed on a separate location and so it will be also easily possible to run it independently from Eclipse.

In these Blog posts series we assume:

yoda							as developer user/home/yoda (or ~)	 				as home directory of developer(yoda) usermariadb-10.0.11 					as sources version (and general prefix)MariaDB10-test1 					as Eclipse project name/home/yoda/playground 					as root working directory for sources, project, and installation/home/yoda/playground/mariadb-10.0.11			as sources directory/home/yoda/playground/mariadb-10.0.11-eclipse		as project/working directory/home/yoda/playground/mariadb-10.0.11-linux-x86_64	as binary deployement directory

Replace accordingly the strings from this example to reflect your choices.

Section 3: "Install MariaDB in Eclipse"

3.1 CREATING THE PACKAGE

We have to ways to create the .tar.gz package

* In command line
* In Eclipse

Command line:

$ cd ~/playground/mariadb-10.0.11-eclipse
$ make package

At the end of the execution the package will be created and it should be namedmariadb-10.0.11-linux-x86_64.tar.gz(i686 instead of x86_64 on 32 bit Linux)

Eclipse:

Right Click on the project name(MariaDB10-test1) and choose:Make Target-->Create,
in the popup windowAdda new target just inserting the name in the first field:package, click onOk.
Now Right Click again on the project name and choose:Make Target-->Build, choosepackagefrom the list and clickBuild.

Check on Eclipse Log Console that the package is being created.

At this point, either method chosen, you should have the packagemariadb-10.0.11-linux-x86_64.tar.gzin the project directory (mariadb-10.0.11-eclipse).

3.2 INSTALL THE PACKAGE

We need at this point to run some commands from the shell:


$ cd ~/playground/
$ mv mariadb-10.0.11-eclipse/mariadb-10.0.11-linux-x86_64.tar.gz .
$ tar -zxvf mariadb-10.0.11-linux-x86_64.tar.gz
$ cd mariadb-10.0.11-linux-x86_64
$ scripts/mysql_install_db --basedir=`pwd` --datadir=`pwd`/data --user=yoda

If all is good now you have a working MariaDB installation in~/playground/mariadb-10.0.11-linux-x86_64

Section 4: "Running MariaDB in Eclipse"

4.1 Create a 'Run configuration' and Run

Assuming the full path to binaries is:/home/yoda/playground/mariadb-10.0.11-linux-x86_64.

Right Click on the project (or open theRunmenu) and click onRun As-->Run configurations...,
SelectC/C++ Application, right click and chooseNew.

Compile only two parameters in the respective tabs,MainandArguments

Main(tab):
ClickBrowseand select/home/yoda/playground/mariadb-10.0.11-linux-x86_64/bin/mysqld

Arguments(tab):
--basedir=/home/yoda/playground/mariadb-10.0.11-linux-x86_64 --datadir=/home/yoda/playground/mariadb-10.0.11-linux-x86_64/data --plugin-dir=/home/eclipse/10011/lib/plugin --user=yoda --log-error=error.log --pid-file=mysql.pid --socket=10011.sock --port=10011

Click onApplyand then you can click onRun, as usual check the progress in the Eclipse log Console,

A[Warning]about the user switch is totally fine, if you got only one warning about the user it means you probably managed to run succesfully MariaDB from Eclipse.

4.2 Checking if MariaDB is running

At this point we want to check if MariaDB is actually running:

$ cd ~/playground
$ cd mariadb-10.0.11-linux-x86_64
$ bin/mysql -uroot -h127.0.0.1 -P10011 -e"SHOW GLOBAL VARIABLES LIKE 'version'"

If you see the output:

+---------------+-----------------------+
| Variable_name | Value |
+---------------+-----------------------+
| version | 10.0.11-MariaDB-debug |
+---------------+-----------------------+
1 row in set (0.01 sec)

Your MariaDB is happily running, Congratulations!

In the next Part 4(available soon) you will learn how to debug MariaDB under Eclipse.
You may also want to reviewPart 1andPart 2.

This is the end of Part 3.