ラベル Mroonga の投稿を表示しています。 すべての投稿を表示
ラベル Mroonga の投稿を表示しています。 すべての投稿を表示

Mroonga #14:dataファイルの再作成

XAMPPを使わず、Mroonga単体をインストールしてみる。
手順が正しいか不明だが、とりあえず手っ取り早く環境を作る。


dataファイルの再作成

前回までmroongaのZIPファイルに含まれていたdataフォルダ、my.iniを使ってデータベースを起動したが、
dataフォルダを作成するためのコマンド "mariadb-install-db" というのがあったので、これで再作成してみる。
このコマンドでサービスも登録できるっぽい。

mariadb-install-db

サービスも同時に作りたい場合は "--service=サービス名" パラメータを付ける。
この場合は管理者権限が必要。
mariadb-install-db --service=MariaDB

試してみる。
1) C:\mariadb-10.6.7-winx64\data フォルダの中身をすべて削除

2) MariaDB起動中であれば停止させておく

3) コマンドプロンプト(管理者)にてサービスを削除
mariadbd --remove MariaDB

4) コマンドプロンプト(管理者)でdataファイルとサービスを作成
mariadb-install-db --service=MariaDB

これでサービスの登録、dataファイルの作成、my.iniの作成が行われる。


Mroonga, MariaDB, MySQL

Mroonga #13:サービス停止

XAMPPを使わず、Mroonga単体をインストールしてみる。
手順が正しいか不明だが、とりあえず手っ取り早く環境を作る。


サービス停止

データベースのサービスを停止するには以下コマンドで可能。
コマンドプロンプトの管理者権限は不要。

mariadb-admin -u root -p shutdown

実行結果:
C:\mariadb-10.6.7-winx64\bin>mariadb-admin -u root -p shutdown
Enter password: ****
  


Mroonga, MariaDB, MySQL

Mroonga #12:サービス登録

XAMPPを使わず、Mroonga単体をインストールしてみる。
手順が正しいか不明だが、とりあえず手っ取り早く環境を作る。


MariaDB サービス登録

MariaDBをサービス起動するよう、サービスへの登録を行う。
サービス登録には管理者権限が必要なため、コマンドプロンプト(管理者)を起動し、以下コマンドを入力。
cd /d C:\mariadb-10.6.7-winx64\bin
mariadbd --install サービス名

"サービス名" には任意名を付けられるようだが、"MariaDB" を指定するのが無難。

実行結果:
C:\WINDOWS\system32>cd /d C:\mariadb-10.6.7-winx64\bin

C:\mariadb-10.6.7-winx64\bin>mariadbd --install MariaDB
Service 'MariaDB' successfully installed.
  
サービス (services.msc)を起動すると、"MariaDB" が登録されている。
すでにMariaDBが立ち上がっているとサービス起動できないので、
もしMariaDBのCUI画面が起動中であれば[X]で終了させ、サービスを開始する。

"mariadb -u root -p" でログインできることを確認。

サービスを削除する場合は、管理者権限で以下コマンドを実行。
mariadbd --remove サービス名


Mroonga, MariaDB, MySQL

Mroonga #11:rootパスワード変更

XAMPPを使わず、Mroonga単体をインストールしてみる。
手順が正しいか不明だが、とりあえず手っ取り早く環境を作る。


rootパスワード変更

今の時点ではrootパスワードが設定されていないので、
パスワードを設定しておく。

※ mariadbを起動していなければ起動しrootでログインしておく。(mariadbdも未起動であればこちらも起動)

ALTER USER 'root'@'localhost' IDENTIFIED BY 'パスワード';

実行結果:
C:\mariadb-10.6.7-winx64\bin>mariadb -u root
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 5
Server version: 10.6.7-MariaDB Source distribution

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> alter user 'root'@'localhost' identified by 'pswd';
Query OK, 0 rows affected (0.013 sec)

MariaDB [(none)]>
  

テスト:
"mariadb -u root -p" で実行し、設定したパスワードでログインできることを確認。
C:\mariadb-10.6.7-winx64\bin>mariadb -u root -p
Enter password: ****
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 6
Server version: 10.6.7-MariaDB Source distribution

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.    
  


Mroonga, MariaDB, MySQL

Mroonga #10:インストール


XAMPPを使わず、Mroonga単体をインストールしてみる。
手順が正しいか不明だが、とりあえず手っ取り早く環境を作る。

環境

Windows 11 21H2 22000.675 (Hyper-V仮想ゲスト)

ダウンロード

Mroongaのサイト
https://mroonga.org/ja/
上記より、とりあえず最新版(12.04)のZIPをダウンロード。

"Mroonga 12.04リリース! (2022-06-06)" のリンク →
"インストール方法: インストール" のリンク →
"2.1.2. Zip" のリンク →
"MariaDB with Mroonga-12.04" のリンク →

GithHubのページにジャンプする。
沢山のファイルが表示されるが、とりあえず最新版ということで、
"mariadb-10.6.7-with-mroonga-12.04-winx64.zip"
をクリックしダウンロード。

インストール

ZIPファイルを解凍、
解凍後のフォルダ "mariadb-10.6.7-winx64" を C:\へ移動する。
※ Windows標準機能で解凍するとファイル保護が付いた状態で解凍されるため、7-zip等を使って解凍した方が良い。

設定変更

my.ini が C:\mariadb-10.6.7-winx64\data にあるので編集。
datadirのパスが異なっているので修正。
plugin-dirのパスも異なっている。pluginフォルダが存在しないがとりあえず修正。
[mysqld]
datadir=C:\mariadb-10.6.7-winx64\data
[client]
plugin-dir=C:\mariadb-10.6.7-winx64\plugin

動作確認

エクスプローラーで "C:\mariadb-10.6.7-winx64\bin\mariadbd.exe" を実行。
黒窓が起動し待機中となる。

→ コマンドプロンプトがすぐに閉じてしまう場合はmy.iniの設定が誤っているかも。
コマンドプロンプトを起動し mariadb.exe を実行、ログインできることを確認する。
cd /d C:\mariadb-10.6.7-winx64\bin\
mariadb -u root

実行結果:
C:\Users\user>cd /d C:\mariadb-10.6.7-winx64\bin

C:\mariadb-10.6.7-winx64\bin>mariadb -u root
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 10.6.7-MariaDB Source distribution

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>
  
※ PowerShellの場合、"maria" では実行できないため、
"./mariadb -u root" のように先頭に "./" を付けること。


MariaDB, MySQL

Mroonga:DATE列にNULLが登録できない

MroongaのDATE列項目にNULLを登録しようとするが"1970-01-01"になってしまう。


環境

Windows Server 2016 バージョン 1607 (14393.4283)
MariaDB 10.5.8 with Mroonga 11.01 winx64

原因

以下に書いてあった。
https://mroonga.org/ja/docs/reference/limitations.html

5.6.3. カラムの値に関する制限事項
ストレージモードにおいて、カラムの値には制限があります。

MroongaストレージエンジンはNULL値を自動的に補正します。

例えば、 DATE 型や DATETIME 型に指定されたNULL値はMroongaストレージエンジンが日や月の値として0を1へと自動的に補正します。

つまり、0月は1月へ、0日は1日として扱います。

そして、NULL値はUNIX時間の0秒 (1970-01-01)として扱います。

このような自動変換は DATE 型や DATETIME 型に限定されません。

NULL値はカラムのデフォルト値へと変換されます。多くの場合、文字列型であれば空文字列へ、数値型であれば0へと変換されます。

その他の記事