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

2018年5月24日木曜日

プロキシMySQL :: HAproxy || ProxySQLとKeepAlived


だからあなたのMySQLトラフィックをルーティングする場合、いくつかのオプションが存在します。 

今私はHAproxyがクライアントとより頻繁に使用されるのを見てきましたが、設定するのはかなり簡単です。 Perconaには興味のある人の例があります:

個人的に私はProxySQLが好きです。 Perconaにもこれに関するブログはほとんどありません
PerconaにもProxySQLバージョンがあります

私はいくつかの例を書いてみることを考えていましたが、ペルコナ全体がそれをとてもうまく説明しました。 私はそれらの投稿から何かを取り除きたくない、代わりにそれらのURLを介して多くの良い情報が利用可能であることを指摘する。 だからすでに書かれたものを書き換えるのではなく、私は興味のある人のための情報のコレクションを作成します。

最初に自分が必要と望むものを比較して決定します。 以下のリンクはもちろん、ProxySQLに偏っていますが、全体的な検討範囲が与えられます。
クラスタやマスターをマスタリングしていて、どのサーバーに接続していても、書き込みと読み取りがどちらになるかは気にしません。 HAproxyはシンプルな設定が可能です。

ProxySQLの特典は、トラフィックを簡単に重み付けして並べ替えることができます。 したがって、書き込みをノード1に行って、ノード2とノード3からプルを選択することができます。これに関するドキュメントは、次の場所にあります。
はい、HAproxyで実行できますが、それに応じてアプリケーションに指示する必要があります。
これは、クエリルールに基づいてProxySQLで処理されます。

今ここで明らかな質問:はい、どのようにProxySQLを単一障害点にしないようにしますか?

あなたは堅牢なロードバランサやetcなどを投資することができます。ハードウェアを投げてください....または自分で簡単にしてオープンソースをサポートし、 KeepAliveを使用してください。 これは設定が非常に簡単で、そのすべてがここでもうまく文書化されています:
あなたがluaとmysql-proxyを扱ったことがあるならば、ProxySQLとKeepalivedは非常に簡単です。 それでも何らかの理由でそれが必要な場合: https : //launchpad.net/mysql-proxy

HAproxy、ProxySQL、または別のソリューションを選択した場合でも、単一障害点を別の障害点に置き換えないようにする必要があります。 あなたがプロキシを使用している場合、これをしない理由はほとんどありません。

ProxySQLについてもう少し詳しく説明します。

http://anothermysqldba.blogspot.com/2018/05/proxy-mysql-haproxy-proxysql-keepalived.html

2014年1月4日土曜日

見過ごされて行くハードワーク....

Originally posted: http://anothermysqldba.blogspot.com/2014/01/hard-work-that-goes-unnoticed.html

今日は瞬間を取り、私のLinuxディストリビューションのいずれかを更新した。 この分布では、私はPercona 5.6は、MySQLデータベースとしてインストールされているために起こる。 私はあなたのお好みに設定できますか前に言及しているのYumリポジトリを経由してMySQLを 。

ここに私のポイントは、しかしである、どのように我々は、これまで彼らが行うすべての作業のためにこれらの人々に感謝しますか?

これらのリポジトリの多くは、企業が実行され、これらの人々は、彼らが何のために支払いを受ける。 それは彼らのディストリビューションに利用可能になるまで、まだ、地域社会(のDebian / Ubuntuのを含む)は、Linuxの調査の一般的な観察/質問を通じて、人々の大半はアップグレードされません。 私はセキュリティとバグ修正の上に滞在したい方に起こるので、私はyumを持つリポジトリできるだけ頻繁に元からアップデートを。

私のポイントは、多くの作業を配布するため、これらのファイルのパッケージングになり、ほとんどの部分は、それはかなり報われない仕事のように見え、ある。 あなた自身を掘ると依存関係を見つけなければならなかったとき、私は、tarとgzipの古い(古いが、古いではない)日々を思い出す。 - 。/ configureを.. いや、ダウンロードを行って、それをインストールして何か他のものを必要とし、再試行してください.....

私は前にいくつかの時間がかかったでしょうしばらくすると25種類のパッケージを、アップグレードした。 ヤ ムやapt取得が遠く新品であり、私はここで、古いタイマーのような音が、私はちょうどそれが私たちのLinuxの経験のすべてを作るために舞台裏で働く すべての人々のおかげで、と言う、おろかはいいかもしれないと思った関連MySQLは、簡単かつスムーズにインストールされます。

私はOracleが利用可能になりました5.6のパッケージを持っていることを指摘します。


私は私のことを思い出して、以前の投稿は、それがされていなかったか述べた。

2013年11月30日土曜日

コミュニティからの戦略

Original post: http://anothermysqldba.blogspot.com/2013/11/a-strategy-from-community.html

私たちは、MariaDBはFedoraやSUSEとRed HatでのMy​​SQLの交換についてのニュースを見てきました。

Oracleは、ニュースについて幸せではないでしょうが、オープンソースコミュニティは、Linuxに実装される「詳細」のオープンソースソリューションに焦点をサポートしています。

我々はすべて見てからMySQLからMariaDBに移動する決定や戦略が可能性が高いだけでは、Red Hat、上部経営者によって行われていなかった、ということです可能性が面白いこと。 これは、はるかにRed Hatが評価され、彼らは耳を傾け、オープンソースコミュニティからの移動である可能性が高い。

バックジャッキーYeaneyの(見てみ、これを考慮@ jackieyeaneyを 」について投稿) は、Red Hatの企業戦略プロセスの民主化 」(掲載11月10日、2011年)およびRed Hatがどのように機能するかを学びます。 オープン私たちの心を保つ " 我々は、オープンソースコミュニティ内の既存のネットワークを活用し、「」とRed Hatの外のアイデアを社会。" コミュニティは、オープン性を求めていましたし、結果は、Red HatがMariaDBへの移行があったことになり、それはおそらくイエスです、私の愚見では、Red Hatのオープン戦略に関連している。

ジム·ホワイトハースト ( JWhitehurst @は、 「与えられた十分な眼球、すべてのバグ:)ではないという理由だけで、それが会社に報酬を与えるだけでなく、それは彼らがどのように動作するか革命をもた らしどのので、戦略的な意思決定を行い、他の人からの入力を取る金融ゲインのオープンソースコミュニティを受け入れるように見える浅い。 "

MySQLには、最後の文を関連付けるために時間を取る。 MySQLをたどる場合bugs.mysql.comサイトでは、あなたは、Oracleが閉じていることをよく知っている(あるいは今ではあまり開いてバージョンを持っている)。 Oracleはそのための独自の企業の推論がありますが、オープンソースコミュニティは、「十分な眼球を考えると、すべてのバグが浅い。」の説明

MariaDBは成長し、さらに関連したバグ追跡がオープンされるデフォルトのDBとしてのLinuxディストリビューションに埋め込まれ、それをバグが長期的にはマリアとMySQL間で分割方法を見て興味深いものになるようになると。

だから今.. MySQLはOracleがまだあるためMariaDBの起こった動きを国有企業や地域社会のバージョンを持っていたが興味深い点です。 オラクルは、Javaや関連OpenJDKのを所有しています。 私はちょうどインチ見て部外者としてこれを求めていながら、.. のJava / OpenJDKのは、Oracleが所有していなかった別のソフトウェアパッケージに分岐した場合、我々はすぐにもレッドハットは、Java / OpenJDKのための交換を参照してくださいだろうか? 再び私は、Javaの世界への部外者ですので、私はちょうどのための類似のそれは、MySQLと表しますようお願いいたします。 

2013年11月19日火曜日

MariaDB&Linuxディストリビューション

Original post: http://anothermysqldba.blogspot.com/2013/11/mariadb-linux-distributions.html

だから今、多くの皆さんのことでグーグル、SUSEおよびRed Hat / Fedoraのではなく、MySQLのデフォルトのデータベースとしてMariaDBへの移行についてのニュースを見てきました。

MariaDBとSkySQLは、今年は非常に生産的なビジネスの動きをした。 これは本当にMySQLのコミュニティと一般的なオープンソースコミュニティのために何を意味するのでしょうか?

スターターは、MySQLはとても人気が作ったものに戻って考えるために? これは、すべてのトップのLinuxディストリビューションで容易に利用可能であった。

オープンソースの焦点移動のプッシュが始まったので、OpenSuseのとFedoraは既にMariaDBに動いている。 デフォルトのデータベースとしてMariaDB持つRHELの移行に続いて、その後もCentOSのはすぐにデフォルトのデータベースとしてMariaDBなければならないことを意味します。

従うことがすぐにそうではUbuntuとDebianのによって動きになります。 私はすでに移動中にニュースを逃したかもしれないが、私はそうは思わない。

このすべてがビッグニュースとMariaDBとオープンソースコミュニティのための動きである。 MariaDBは当然、よりユーザーの受け入れと使用を参照するために開始されます。 OracleのMySQLはまだオープンソースソフトウェアパッケージですが、大きな問題は、MySQLユーザーのバグbugs.mysql.comサイトと追跡されています。 人々はすぐにMariaDBでより多くのバグを追跡するために開始されます?

MariaDBはまた、OracleのMySQLにおける唯一のソリューションが利用できる企業を模倣する、オープンソースの機能を備えています。 だから、多くのユーザーは、当然これらの機能でピックアップしようとしている。

Oracleは、優れた機能とコードを構築していますが、どのように多くの地域では、それを取っている間? MySQLは5.1は重くLinuxディストリビューションと、多くのユーザーが唯一のMySQL 5.1を知っていて、こんなに早くMariaDB 5.5かもしれない使用されるコミュニティで使用されています。

次に何が起こるのだろうか?
まあ何Oracleが行うことを決定すると見られるようにまだ、まだです。 OracleはすでにオラクルのLinux(OEL)を構築するためにRed Hat Linuxを取る。 だから皮肉にも今では、OracleのMySQLのからフォークさMariaDBは、、彼らのOELのために削除するには、Oracle用のRed Hat Linuxになります。 Oracleは、いくつかの方法でJavaと反撃のでしょうか?

Perconaは何をしますか? Perconaもこの中でプレイヤーであると長年にわたってMariaDBとOracleとの尊重の関係を持っていた。 それがどんな動きはPerconaの一部で発生しているかどうかを好奇心旺盛になりますので、当然のことながら、Perconaは物事のオープンソースの側に向かって無駄のない。 多くのツールはすぐになってMariaDBの機能に焦点を当てたのだろうか?

MariaDB何をしますか? まあ、のバグの成長率を監視MariaDBバグデータベースには MariaDBを取るし始めているどのように多くの人々を示して助ける。
マリアは、ある時点で、MySQLのソースコードの更新から脱却し、ちょうど社会とそのエンジニアとビルドを続けるのだろうか?

だから、次に何が起こる? 我々は知らない。 これは、オープンソースコミュニティに任されています。 怒りの声の多くは長年にわたってオラクルに向けられていた。 だから、どのようにそれらの声はすぐに見られるようになりますを変更したり、MariaDBのサポートを示してください。 それらの多くは、おそらく既にMariaDBサポートしていますが、それはMariaDBは、MySQLに関してで行う方法も示します大衆の採用である。 多くの企業が名をMySQLの知っていると(これは先日私に起こった。)MariaDBに移動することをためらうようになります。 だからMariaDBの仕事はまだ終わっていません。
そして、まだこのすべての後に... オラクル、レッドハットとGoogleはまだするために一緒に来る私たちの政府を支援する 。

2013年9月25日水曜日

MySQLをYUMレポ(Oracleの、MariaDBとPercona)

Original post: http://anothermysqldba.blogspot.com/2013/09/mysql-yum-repo-oracles-mariadb-and.html

例えばMySQLの最新のRPMをダウンロードの上、関連するソフトウェアをインストールする際に多くの人々は、今日のyumパッケージマネージャに固執することを好む。

あなたがベンダーからRPMSをダウンロードして、yumを(yumをインストール*。rpmの)を使ってインストールできますが、あなたはまた、MySQLのパッケージベンダーから直接引っ張ってあなたのyumのリポジトリを更新することができます。 この記事の時点では、あなただけのMySQL 5.6 GAがリリースされたにもかかわらず、MySQLを5.5.13にあなたを取得します2013年2月5 Oracleのレポを介して。 今、MariaDBはMariaDB-5.5.33をリリースしたことを、私はOracleが上の動きを取得し、それらの公共レポを更新します望んでいるだろう。

かかわらず、あなたは何を選ぶかの。 ここでは、あなたが好む何にアクセスできるようにベンダーのレポを設定する方法である。

すべてのインスタンスは、フォローして設定するのは簡単です、私が記載しているページがあります。 私が先に行くと同様の例を与える。

私は、これらの例については、CentOSの6 64bit版を使用します。

すべてのケースでは、rootとしてyum.repos.dディレクトリから働くことになります。
CDの/ etc / yum.repos.d


http://public-yum.oracle.com
wgetのhttps://public-yum.oracle.com/public-yum-ol6.repo
#viの公開YUM-ol6.repo
次を見つけて、0から1に有効に編集し、ファイルを保存します。




[ol6_MySQL]
オラクルのLinux 6の名前= MySQLの($ basearch)
BASEURL = http://public-yum.oracle.com/repo/OracleLinux/OL6/MySQL/ $ basearch /
gpgkey =ファイル:/ /の/ etc / PKI / RPM-GPG / RPM-GPG-KEY-オラクル
gpgcheck = 1
有効= 1

yum list | grep MySQL
mysql.x86_64 5.5.34-1.el6 ol6_MySQL
mysql-devel.x86_64 5.5.34-1.el6 ol6_MySQL
mysql-embedded.x86_64 5.5.34-1.el6 ol6_MySQL
mysql-embedded-devel.x86_64 5.5.34-1.el6 ol6_MySQL
mysql-libs.x86_64 5.5.34-1.el6 ol6_MySQL
mysql-libs-compat.x86_64 5.5.34-1.el6 ol6_MySQL
mysql-server.x86_64 5.5.34-1.el6 ol6_MySQL
mysql-test.x86_64 5.5.34-1.el6 ol6_MySQL


https://downloads.mariadb.org/mariadb/repositories/
viのMariaDB.repo






MariaDBはあなたに5.5 OR 10を選択するための選択肢を提供していません、私は、この例では5.5を使用していました。


# MariaDB 5.5 CentOS repository list - created 2013-09-24 21:59 UTC
# http://mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/5.5/centos6-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1



MariaDB-Galera-server.x86_64 5.5.32-1 mariadb
MariaDB-client.x86_64 5.5.33a-1 mariadb
MariaDB-common.x86_64 5.5.33a-1 mariadb
MariaDB-compat.x86_64 5.5.33a-1 mariadb
MariaDB-devel.x86_64 5.5.33a-1 mariadb
MariaDB-server.x86_64 5.5.33a-1 mariadb
MariaDB-shared.x86_64 5.5.33a-1 mariadb
MariaDB-test.x86_64 5.5.33a-1 mariadb
galera.x86_64 23.2.6-1.rhel6 mariadb



http://www.percona.com/doc/percona-server/5.5/installation/yum_repo.html
viのPercona.repo

[percona]
name = CentOS $releasever - Percona
baseurl=http://repo.percona.com/centos/$releasever/os/$basearch/
enabled = 1
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-percona
gpgcheck = 1


percona-toolkit.noarch 2.2.4-1 @/percona-toolkit-2.2.4-1.noarch
percona-xtrabackup.x86_64 2.1.3-608.rhel6 @/percona-xtrabackup-2.1.3-608.rhel6.x86_64
Percona-SQL-50-debuginfo.x86_64 5.0.92-b23.89.rhel6 percona
Percona-SQL-client-50.x86_64 5.0.92-b23.89.rhel6 percona
Percona-SQL-devel-50.x86_64 5.0.92-b23.89.rhel6 percona
Percona-SQL-server-50.x86_64 5.0.92-b23.89.rhel6 percona
Percona-SQL-shared-50.x86_64 5.0.92-b23.89.rhel6 percona
Percona-SQL-shared-compat.x86_64 5.0.92-b23.89.rhel6 percona
Percona-SQL-test-50.x86_64 5.0.92-b23.89.rhel6 percona
Percona-Server-51-debuginfo.x86_64 5.1.71-rel14.9.589.rhel6 percona
Percona-Server-55-debuginfo.x86_64 5.5.33-rel31.1.566.rhel6 percona
Percona-Server-56-debuginfo.x86_64 5.6.13-rc60.6.427.rhel6 percona
Percona-Server-client-51.x86_64 5.1.71-rel14.9.589.rhel6 percona
Percona-Server-client-55.x86_64 5.5.33-rel31.1.566.rhel6 percona
Percona-Server-client-56.x86_64 5.6.13-rc60.6.427.rhel6 percona
Percona-Server-devel-51.x86_64 5.1.71-rel14.9.589.rhel6 percona
Percona-Server-devel-55.x86_64 5.5.33-rel31.1.566.rhel6 percona
Percona-Server-devel-56.x86_64 5.6.13-rc60.6.427.rhel6 percona
Percona-Server-server-51.x86_64 5.1.71-rel14.9.589.rhel6 percona
Percona-Server-server-55.x86_64 5.5.33-rel31.1.566.rhel6 percona
Percona-Server-server-56.x86_64 5.6.13-rc60.6.427.rhel6 percona
Percona-Server-shared-51.x86_64 5.1.71-rel14.9.589.rhel6 percona
Percona-Server-shared-55.x86_64 5.5.33-rel31.1.566.rhel6 percona
Percona-Server-shared-56.x86_64 5.6.13-rc60.6.427.rhel6 percona
Percona-Server-shared-compat.x86_64 5.5.33-rel31.1.566.rhel6 percona
Percona-Server-shared-compat-51.x86_64 5.1.71-rel14.9.589.rhel6 percona
Percona-Server-test-51.x86_64 5.1.71-rel14.9.589.rhel6 percona
Percona-Server-test-55.x86_64 5.5.33-rel31.1.566.rhel6 percona
Percona-Server-test-56.x86_64 5.6.13-rc60.6.427.rhel6 percona
Percona-XtraDB-Cluster-client.x86_64 1:5.5.33-23.7.6.495.rhel6 percona
Percona-XtraDB-Cluster-debuginfo.x86_64 1:5.5.33-23.7.6.495.rhel6 percona
Percona-XtraDB-Cluster-devel.x86_64 1:5.5.33-23.7.6.495.rhel6 percona
Percona-XtraDB-Cluster-galera.x86_64 2.7-1.157.rhel6 percona
2.7-1.157.rhel6 percona
Percona-XtraDB-Cluster-server.x86_64 1:5.5.33-23.7.6.495.rhel6 percona
Percona-XtraDB-Cluster-shared.x86_64 1:5.5.33-23.7.6.495.rhel6 percona
Percona-XtraDB-Cluster-test.x86_64 1:5.5.33-23.7.6.495.rhel6 percona
jemalloc.x86_64 3.3.1-1.el6 percona
jemalloc-devel.x86_64 3.3.1-1.el6 percona
percona-cacti-templates.noarch 1.0.4-1 percona
percona-nagios-plugins.noarch 1.0.4-1 percona
percona-playback.x86_64 0.6-2.el6 percona
percona-playback-debuginfo.x86_64 0.6-2.el6 percona
percona-playback-devel.x86_64 0.6-2.el6 percona
percona-xtrabackup.x86_64 2.1.5-680.rhel6 percona
percona-xtrabackup-20.x86_64 2.0.8-587.rhel6 percona
percona-xtrabackup-20-debuginfo.x86_64 2.0.8-587.rhel6 percona
percona-xtrabackup-20-test.x86_64 2.0.8-587.rhel6 percona
percona-xtrabackup-test.x86_64 2.1.5-680.rhel6 percona
qpress.x86_64 11-1.el6 percona
qpress-debuginfo.x86_64 11-1.el6 percona

 
うまくいけば、これは、すべての瞬間にあなたの標準リポジトリにあるかもしれないものを超えて更新され得ることができるようにするのに役立ちます。

2013年6月14日金曜日

max_binlog_cache_size

Original post: http://anothermysqldba.blogspot.com/2013/06/maxbinlogcachesize.html

あなたは、データベースのパフォーマンスと安定性を評価するように、それはあなたの変数を確認するには開始されることは非常に可能性があります。 

一目で以下の変数への典型的な最初の反応である。 何かが私のボックスには、MAXは以下のとおり制限する満たすために、その多くのRAM、あるいはディスク·スペースを持っていない間違っているWAIT .... 

MariaDB [(none)]> select @@max_write_lock_count, @@max_binlog_cache_size, @@max_seeks_for_key, @@myisam_max_sort_file_size\G
*************************** 1. row ***************************
@@max_write_lock_count: 4294967295                     -- 4 GB
@@max_binlog_cache_size: 1844674407370954752          --1.6 EB
@@max_seeks_for_key: 429496729                         -- 4 GB
@@myisam_max_sort_file_size: 9223372036853727232        --8 EB 


いくつかのバグは、長年にわたって、これらの変数については記載されているように、これらの変数との懸念には一人ではありません。 以下は、いくつかのレガシーなもののほんの一部です。 


" MySQLは現在4GBより大きいバイナリログの位置で作業することはできません 。 " 
これらは単なるDEFAULTとMAXの設定であることに留意してください。 あなたがより快適に感じさせるためにそれらを調整することができます。 

MariaDB [(none)]> SET GLOBAL max_binlog_cache_size = 4294967296;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> SELECT @@max_binlog_cache_size;
+-------------------------+
| @@max_binlog_cache_size |
+-------------------------+
| 4294967296 | -- 4GB
+-------------------------+
1 row in set (0.00 sec) 


なぜあなたはしたいと思う... それは全く別の話題です。 これはただの上限許容と取引はとにかく4ギガバイトに分割取得することです。 " 推奨される最大値は4GBです "ので、そう余りに選択した場合はそれを更新することができます。 

MySQLのドキュメントにこれであなたのオプションについて詳しく読む: 
http://dev.mysql.com/doc/refman/5.5/en/replication-options-binary-log.html#sysvar_max_binlog_cache_size

2013年6月13日木曜日

のFedora 17 x86_64の上でMariaDB 10.0.3アルファインストール

Original post: http://anothermysqldba.blogspot.com/2013/06/mariadb-1003-alpha-install-on-fedora-17.html
MariaDB 10.0.3アルファがリリースされたばかり。
だから、私の前のことを思い出してあなたのそれらのためにMariaDB 5.5インストールポストを、私はそれが10.0.3でどのように動作するかを確認することを決めた。

私がに行っている機能のいくつか好きMariaDBとPerconaリリース。 あなたの大きなサポーターであってもMySQLは 、機能は背面に移植されていないこれらのリリースで利用可能になったときのMySQLリリースDBAはそれらのオプションを確認し、選択を行う必要があります。

だからインストール....

私は以前の記事から前に言ったように私は、これがインストールされています。 だから、僕は最初のアップグレードになります。

[root@Fedora64 10]# rpm -qa | grep maria
mariadb-5.5.31-1.fc17.x86_64
mariadb-server-5.5.31-1.fc17.x86_64
mariadb-libs-5.5.31-1.fc17.x86_64
mariadb-bench-5.5.31-1.fc17.x86_64
mariadb-devel-5.5.31-1.fc17.x86_64

だからパッケージは、開始時に矛盾。

MariaDB-10.0.3-fedora17-x86_64-client.rpm
MariaDB-10.0.3-fedora17-x86_64-common.rpm
MariaDB-10.0.3-fedora17-x86_64-compat.rpm
MariaDB-10.0.3-fedora17-x86_64-connect-engine.rpm
MariaDB-10.0.3-fedora17-x86_64-devel.rpm
MariaDB-10.0.3-fedora17-x86_64-server.rpm
MariaDB-10.0.3-fedora17-x86_64-shared.rpm
MariaDB-10.0.3-fedora17-x86_64-test.rpm

[root@Fedora64 10]# rpm -Uhv *.rpm
warning: MariaDB-10.0.3-fedora17-x86_64-client.rpm: Header V3 DSA/SHA1 Signature, key ID 1bb943db: NOKEY
error: Failed dependencies:
libodbc.so.2()(64bit) is needed by MariaDB-connect-engine-10.0.3-1.x86_64
MySQL-devel conflicts with (installed) mariadb-devel-5.5.31-1.fc17.x86_64  


MariaDB-server-10.0.3-1.x86_64 conflicts with file from package mariadb-server-5.5.31-1.fc17.x86_64
[root@Fedora64 10]#


だから、これはただのVirtualBoxインスタンスで,デモや評価のために、私はちょうど私ができることをすべてを削除し、アンインストールする必要がありました。 私は、アップグレードがうまくいくことを期待していたが、これはまだアルファコードです。
すなわち:

[root@Fedora64 10]# rpm -e mariadb mariadb-server mariadb-bench
[root@Fedora64 10]# rpm -e mariadb-libs perl-DBD-MySQL percona-xtrabackup


だから今過去が一掃されていることを...

[root@Fedora64 10]# rpm -ihv *.rpm
Preparing... ########################################### [100%]
1:MariaDB-common ########################################### [ 11%]
2:MariaDB-server ########################################### [ 22%]
3:MariaDB-cassandra-engin########################################### [ 33%]
4:MariaDB-client ########################################### [ 44%]
5:MariaDB-devel ########################################### [ 56%]
6:MariaDB-shared ########################################### [ 67%]
7:MariaDB-test ########################################### [ 78%]
8:MariaDB-compat ########################################### [ 89%]
9:galera ########################################### [100%]


あなたが過去リコール場合はポストを 、私はinit.dのスクリプトにこの時間を持って..

[root@Fedora64 10]# /etc/init.d/mysql start
Starting MySQL..... SUCCESS!
[root@Fedora64 10]# mysql
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 10.0.3-MariaDB MariaDB Server


彼らはパフォーマンスにひどいされていない場合、これらはデフォルトでオンになっていない理由は、私は表示されません:

vi /etc/my.cnf
[mysqld]

userstat=1
# http://www.percona.com/doc/percona-server/5.5/diagnostics/user_stats.html?id=percona-server:features:userstatv2
# https://kb.askmonty.org/en/user-statistics/
feedback=ON
# https://kb.askmonty.org/en/user-feedback-plugin/
MariaDB [(none)]> show variables like '%feedback%';
+--------------------------+------------------------------------------+
| Variable_name | Value |
+--------------------------+------------------------------------------+
| feedback_send_retry_wait | 60 |
| feedback_send_timeout | 60 |
...
| feedback_url | https://mariadb.org/feedback_plugin/post |
| feedback_user_info | |
+--------------------------+------------------------------------------+

MariaDB [(none)]> show variables like '%userstat%';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| userstat | ON |
+---------------+-------+



問題は私がインストールした後、30秒を見つけました...:

MariaDB [(none)]> show variables;
ERROR 1946 (HY000): Failed to load replication slave GTID position from table mysql.gtid_slave_pos


それはこれまでのところ、それは... 私はそれがインストールされていて、今では確認することができます...

UPDATE: 
私は、これを提出しているバグ 。 MariaDBチームは私にすぐに戻ったと私はmysql_upgradeを実行し、再起動に失敗したことを指摘した。 それは、上記のエラーを修正しました。 それが持つすべてのものを表示する必要がありますように、まだ変数が感じているが、これは私の一部に有効な修正と間違いです。 MariaDBチームに感謝します。 

もっと知るには:

2013年6月9日日曜日

yumをインストールMariaDB / MySQLの災害が、固定

Original post: http://anothermysqldba.blogspot.com/2013/06/yum-install-mariadbmysql-disaster-but.html

だから、これはMariaDB / MySQLを簡単にインストールする必要があります。 私は、これがマリアの問題だったと思うが、ちょうど全体のバグではありません。 ここで何が起こったのかで、どのように私はそれを修正しました。

yumをインストールmariadbサーバ
その後、私はあなたが以下を参照してください何を持って残りの部分を追加しました。

[root@Fedora64 log]# rpm -qa | grep maria
mariadb-5.5.31-1.fc17.x86_64
mariadb-server-5.5.31-1.fc17.x86_64
mariadb-libs-5.5.31-1.fc17.x86_64
mariadb-devel-5.5.31-1.fc17.x86_64
私はそれが私は、/ etc / init.dディレクトリ/ mysqlのファイルを取得しなかったことを奇妙だと思ったが、私はそれと一緒に行った、私は何が起こったのか見てみたかった。

[root@Fedora64 log]# mysqld_safe
130608 19:54:36 mysqld_safe Logging to '/var/log/mysqld.log'.
130608 19:54:37 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
130608 19:54:39 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended

130608 19:54:37 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
130608 19:54:37 InnoDB: The InnoDB memory heap is disabled
130608 19:54:37 InnoDB: Mutexes and rw_locks use GCC atomic builtins
130608 19:54:37 InnoDB: Compressed tables use zlib 1.2.5
130608 19:54:37 InnoDB: Using Linux native AIO
130608 19:54:37 InnoDB: Initializing buffer pool, size = 128.0M
130608 19:54:37 InnoDB: Completed initialization of buffer pool
130608 19:54:37 InnoDB: highest supported file format is Barracuda.
130608 19:54:38 InnoDB: Waiting for the background threads to start
130608 19:54:39 Percona XtraDB (http://www.percona.com) 5.5.31-MariaDB-30.2 started; log sequence number 1597945
130608 19:54:39 [Note] Plugin 'FEEDBACK' is disabled.
130608 19:54:39 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
130608 19:54:39 [Note] Server socket created on IP: '0.0.0.0'.
130608 19:54:39 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
130608 19:54:39 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
うわー... 最初の実行と失敗は良い兆候ではありません。 これは、新規インストールmysqlディレクトリがインストールされているはずです。 私は箱に入って見て回ることができるようにスキップ助成-テーブル - だから私は始めています。

[root@Fedora64 mysql]# ls -la
total 28700
drwxr-xr-x. 2 mysql mysql 4096 Jun 8 19:58 .
drwxr-xr-x. 43 root root 4096 Jun 8 19:41 ..
-rw-rw----. 1 mysql mysql 16384 Jun 8 19:50 aria_log.00000001
-rw-rw----. 1 mysql mysql 52 Jun 8 19:50 aria_log_control
-rw-rw----. 1 mysql mysql 18874368 Jun 8 19:50 ibdata1
-rw-rw----. 1 mysql mysql 5242880 Jun 8 19:58 ib_logfile0
-rw-rw----. 1 mysql mysql 5242880 Jun 8 19:45 ib_logfile1
[root@Fedora64 mysql]#

[root@Fedora64 mysql]# mysqld_safe --skip-grant-tables
130608 20:02:45 mysqld_safe Logging to '/var/log/mysqld.log'.
130608 20:02:45 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql

[OK]をので、始め... と実行それでも大きな問題まだない MySQLテーブルん!

[root@Fedora64 /]# mysql_upgrade
Phase 1/3: Fixing table and database names
Phase 2/3: Checking and upgrading tables
Processing databases
information_schema
Phase 3/3: Running 'mysql_fix_privilege_tables'...
ERROR 1049 (42000): Unknown database 'mysql'
FATAL ERROR: Upgrade failed
これは、依然として固定することができます....
[root@Fedora64 /]# mysql
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 10
Server version: 5.5.31-MariaDB MariaDB Server

Copyright (c) 2000, 2013, Oracle, Monty Program Ab and others.

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

MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
+--------------------+
1 row in set (0.01 sec)

MariaDB [(none)]> create database mysql ;
Query OK, 1 row affected (0.13 sec)

MariaDB [(none)]> exit
Bye
OK今それは私がそれをアップグレードすることができるはずですMySQLテーブルを持っている
[root@Fedora64 /]# mysql_upgrade
Phase 1/3: Fixing table and database names
Phase 2/3: Checking and upgrading tables
Processing databases
information_schema
mysql
Phase 3/3: Running 'mysql_fix_privilege_tables'...
OK
[root@Fedora64 /]#

OKだから私は、mysqldを停止しなくても、それを始めた - スキップ·助成金、それはちょうどそれをインストールし、結局、私はまだパスワードを設定していない。

[root@Fedora64 mysql]# mysqld_safe
[root@Fedora64 /]# mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)


[OK]をので、私は再びそれを試してみましょう...


[root@Fedora64 mysql]# mysqld_safe --skip-grant-tables

MariaDB [mysql]> show tables;
+---------------------------+
| Tables_in_mysql |
+---------------------------+
| columns_priv |
| db |
| event |
| func |
| general_log |
| help_category |
| help_keyword |
| help_relation |
| help_topic |
| host |
| ndb_binlog_index |
| plugin |
| proc |
| procs_priv |
| proxies_priv |
| servers |
| slow_log |
| tables_priv |
| time_zone |
| time_zone_leap_second |
| time_zone_name |
| time_zone_transition |
| time_zone_transition_type |
| user |
+---------------------------+
24 rows in set (0.01 sec)

MariaDB [mysql]> select * from user;
Empty set (0.00 sec)

MariaDB [(none)]> create user root ;
でスキップ助成テーブルが有効になって - ので、私は、次のコマンドを使用することはできません。
''で識別されるユーザーのルートを作成します。

それがゼロの権限を持っているので、だから今、私は名前だけで、rootユーザを持っている。

MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
+--------------------+
1 row in set (0.00 sec)
だから私は、再び箱に行かなければならない - スキップ·助成金の表は、有効になっており、rootアカウントを更新する

UPDATE user
SET Select_priv = 'Y',
Insert_priv='Y',
Update_priv='Y',
Delete_priv='Y',
Create_priv='Y',
Drop_priv='Y',
Reload_priv='Y',
Shutdown_priv='Y',
Process_priv='Y',
File_priv='Y',
Grant_priv='Y',
References_priv='Y',
Index_priv='Y',
Alter_priv='Y',
Show_db_priv='Y',
Super_priv='Y',
Create_tmp_table_priv='Y',
Lock_tables_priv='Y',
Execute_priv='Y',
Repl_slave_priv='Y',
Repl_client_priv='Y',
Create_view_priv='Y',
Show_view_priv='Y',
Create_routine_priv='Y',
Alter_routine_priv='Y',
Create_user_priv='Y',
Event_priv='Y',
Trigger_priv='Y',
Create_tablespace_priv='Y'
WHERE user = 'root';


今すぐ再起動することなく - スキップ·助成金の表は、有効になっており、私はrootでいます!

[root@Fedora64 /]# ps -ef | grep mysql
root 4522 1513 0 20:26 pts/0 00:00:00 /bin/sh /bin/mysqld_safe
mysql 4650 4522 0 20:27 pts/0 00:00:03 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysql/mysql.sock
root 8348 3178 0 20:47 pts/1 00:00:00 grep --color=auto mysql
[root@Fedora64 /]# mysql
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 5.5.31-MariaDB MariaDB Server

Copyright (c) 2000, 2013, Oracle, Monty Program Ab and others.

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

MariaDB [(none)]>


やれやれ。 これは、物事がうまくいかないけど、私はまだます。/ etc / init.d / mysqlのファイルが欲しかったときにそれを修正する方法の例の詳細です

2013年5月30日木曜日

MySQL 4.1の - アップグレードしてください

Original post: http://anothermysqldba.blogspot.com/2013/05/mysql-41-please-upgrade.html
のMySQL DBAは、多くの場合、MySQLのの様々なバージョンを支援するよう求めている。 


SELECT VERSION();
+----------------+
| VERSION() |
+----------------+
| 4.1.18-classic |
+----------------+ 
しかし、私はあなたのすべてを請う... あなたのオプションを評価し、アップグレードします。

MySQLは更新だけでは性能を更新させ、多数のセキュリティ上の問題を行いました。 のMySQLのバージョンを確認してください。 それが下に何かあれば5.5や大きな一気に5.1.69アップグレードをしてください。

それが壊れたときに、あなたのデータベースは"作業"とアップグレードのために利用できる考えるかもしれませんが.... それはいくつかの作業が必要になります...はい。 それは長期的にあなたを救うでしょう.. はい。 あなたのシステムのうち、より多くを得るでしょう... はい... あなたは、修正されたバグを利用することができ... はい。 するのではなく、セキュリティの脆弱性により、 "壊れた"のでしょうか?

停止し、CEOはなぜあなたがハッキングされたのですか尋ねられたときにCEOに言うだろうかについて現時点ではと思いますか?

既知のセキュリティ 脆弱性 に対するあなたのシステムを見てみましょう :

4.1


利用可能なすべての新しいバージョンを活用する:


2013年5月14日火曜日

MariaDB 10.0.2をチェックアウトする

Original post: http://anothermysqldba.blogspot.com/2013/05/checking-out-mariadb-1002.html

私はMariaDB 10.0.2ソースパッケージをダウンロードし、カスタムインストールをしました。私が原因でこれをした以前の記事私はすでに2マスターを構築していたインチ 今回は円形の複製を削除し、このmariadbインストールにそれらを指摘した。 私はポート3310今回使用。 前のポストから同じインストールの設定例では、ちょうど今mariadb-10.0.2のフォルダに入れて、ここで適用される。 私はあなたがそれをしたいだけの場合には、この記事の下部にあるインストールを追加しました。 

私は主に以下の最新MariaDBの機能をチェックアウトしたかったので、私はこれをした理由があった: 

マルチソース·レプリケーション 

あなたが起動するサーバごとに設定が異なるサーバIDを持っていることを確認します。 

ここで何を期待するべきではありませんので、まだ始まったばかり 
> select @@default_master_connection;
+-----------------------------+
| @@default_master_connection |
+-----------------------------+
| |
+-----------------------------+ 

だから、マスターサーバーから情報を収集する 
> show master status\G
*************************** 1. row ***************************
File: percona_mysql-bin.000005
Position: 107 


今Mariadb 10.0.2スレーブを更新 
SET @@default_master_connection='percona';

CHANGE MASTER 'percona' TO MASTER_HOST = '127.0.0.1',
MASTER_USER = 'root',
MASTER_PASSWORD = '',
MASTER_PORT = 3307 ,
MASTER_LOG_FILE = 'percona_mysql-bin.000005',
MASTER_LOG_POS = 107 



> select @@default_master_connection;
+-----------------------------+
| @@default_master_connection |
+-----------------------------+
| percona |
+-----------------------------+

OK今私は第二のマスターを追加してみましょう 
SET @@default_master_connection='oracle';

CHANGE MASTER 'oracle' TO MASTER_HOST = '127.0.0.1',
MASTER_USER = 'root',
MASTER_PASSWORD = '',
MASTER_PORT = 3309 ,
MASTER_LOG_FILE = 'oracle_mysql-bin.000009',
MASTER_LOG_POS = 5453 


次に、あなたは両方の設定が設定されていることを確認するために状態を確認することができます。 
>SHOW ALL SLAVES STATUS\G

*************************** 1. row ***************************
Connection_name: oracle
Slave_SQL_State:
Slave_IO_State:
Master_Host: 127.0.0.1
Master_User: root
Master_Port: 3309
Connect_Retry: 60
Master_Log_File: oracle_mysql-bin.000009
Read_Master_Log_Pos: 5453
Relay_Log_File: relay-bin-oracle.000001
Relay_Log_Pos: 4
Relay_Master_Log_File: oracle_mysql-bin.000009
Slave_IO_Running: No
Slave_SQL_Running: No
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 5453
Relay_Log_Space: 248
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Seconds_Behind_Master: NULL
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 0
Last_IO_Error:
Last_SQL_Errno: 0
Last_SQL_Error:
Replicate_Ignore_Server_Ids:
Master_Server_Id: 0
Master_SSL_Crl:
Master_SSL_Crlpath:
Using_Gtid: 0
Retried_transactions: 0
Max_relay_log_size: 1073741824
Executed_log_entries: 0
Slave_received_heartbeats: 0
Slave_heartbeat_period: 1800.000
Gtid_Pos:
*************************** 2. row ***************************
Connection_name: percona
Slave_SQL_State:
Slave_IO_State:
Master_Host: 127.0.0.1
Master_User: root
Master_Port: 3307
Connect_Retry: 60
Master_Log_File: percona_mysql-bin.000005
Read_Master_Log_Pos: 107
Relay_Log_File: relay-bin-percona.000001
Relay_Log_Pos: 4
Relay_Master_Log_File: percona_mysql-bin.000005
Slave_IO_Running: No
Slave_SQL_Running: No
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 107
Relay_Log_Space: 248
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Seconds_Behind_Master: NULL
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 0
Last_IO_Error:
Last_SQL_Errno: 0
Last_SQL_Error:
Replicate_Ignore_Server_Ids:
Master_Server_Id: 0
Master_SSL_Crl:
Master_SSL_Crlpath:
Using_Gtid: 0
Retried_transactions: 0
Max_relay_log_size: 1073741824
Executed_log_entries: 0
Slave_received_heartbeats: 0
Slave_heartbeat_period: 1800.000
Gtid_Pos: 

それを起動するために[OK]を時間 

> START ALL SLAVES;
Query OK, 0 rows affected, 2 warnings (0.00 sec)

root@localhost [(none)]> show warnings;
+-------+------+-------------------------+
| Level | Code | Message |
+-------+------+-------------------------+
| Note | 1937 | SLAVE 'percona' started |
| Note | 1937 | SLAVE 'oracle' started |
+-------+------+-------------------------+ 



Relay_Master_Log_File: percona_mysql-bin.000005
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

Relay_Master_Log_File: oracle_mysql-bin.000009
Slave_IO_Running: Yes
Slave_SQL_Running: Yes


だから私たちはいくつかの状況をテストしてみましょう。 

Perconaマスター経由 
use test;
CREATE TABLE `multi_test` (
`time_recorded` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB; 

MariaDBスレーブ 
> show tables;
+----------------+
| Tables_in_test |
+----------------+
| multi_test |
+----------------+ 

OracleのMySQLのマスターを経由して 
use test;
CREATE TABLE `multi_test2` (
`time_recorded` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB; 

MariaDBスレーブ 
> show tables;
+----------------+
| Tables_in_test |
+----------------+
| multi_test |
| multi_test2 |
+----------------+ 

作品そのOK! 


EXPLAIN SHOW 
これはむしろ、それが実行されているクエリをキャッチするまっすぐ進むが、いいです。 
> show explain for 17;
+------+-------------+--------+-------+---------------+---------+---------+------+------+-------------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+------+-------------+--------+-------+---------------+---------+---------+------+------+-------------+
| 1 | SIMPLE | sbtest | range | PRIMARY | PRIMARY | 4 | NULL | 99 | Using where |
+------+-------------+--------+-------+---------------+---------+---------+------+------+-------------+
1 row in set, 1 warning (0.00 sec)

root@localhost [test]> show warnings;
+-------+------+----------------------------------------------------------+
| Level | Code | Message |
+-------+------+----------------------------------------------------------+
| Note | 1003 | SELECT SUM(K) from sbtest where id between 4997 and 5096 |
+-------+------+----------------------------------------------------------+ 


サイドノート: 


カサンドラストレージエンジン 
私はこのことについて好奇心とそれがどのようにmemcacheの経由NoSQLのとInnoDBのソリューションに関する。 
私はここでその上のポストを持っている:http://anothermysqldba.blogspot.com/2013/04/nosql-php-memcache-innodb-mysql.htmlを 

私は自分の環境にセットアップカサンドラセットとしてこれに戻ってくる必要があります。私は熱心ですが好奇心旺盛ではないです。 


ユーザフィードバックプラグ 
ドキュメンテーションの "クイックスタート" [mysqldが]の下のmy.cnfファイルに追加すると言う 
[mysqld]
feedback=ON
port = 3310
socket = /tmp/mariadb-10.0.2.sock

130513 17:45:10 InnoDB: 10.0.2-MariaDB started; log sequence number 20183690
130513 17:45:10 [ERROR] /usr/local/mariadb-10.0.2/bin/mysqld: unknown variable 'feedback=ON' 

これは非常に簡単に働いて、私は、 "クイックスタート"の命令を削除した後のように、このように期待しています。 
> INSTALL PLUGIN feedback SONAME 'feedback.so';

> SELECT plugin_status FROM information_schema.plugins WHERE plugin_name = 'feedback';
+---------------+
| plugin_status |
+---------------+
| ACTIVE |
+---------------+ 


エラーログを介して、あなたもそれが動作を確認できます。 

[注意]フィードバックプラグ: 'http://mariadb.org/feedback_plugin/post'にレポートが送信されました 
[注意]フィードバックプラグイン:サーバは、 'OK'答え 



全体の私の現在のお気に入りの機能拡張は以下のとおりです。 



基本的なインストールはこれであった :
# Preconfiguration setup
shell> groupadd mariadb
shell> useradd -r -g mariadb mariadb

# Beginning of source-build specific instructions
shell> tar zxvf MariaDB-VERSION.tar.gz
shell> cd MariaDB-VERSION
shell> cmake .
shell> make
shell> make install DESTDIR="/usr/local/mariadb-10.0.2-tmp"
# End of source-build specific instructions

Build files have been written to: /usr/local/src/MySQL/MariaDB/10.0.2/mariadb-10.0.2

I do not like the results
-- Installing: /usr/local/mariadb-10.0.2-tmp/usr/local/mysql/
If DESTDIR is should install into that location not start with user under that location. This is a MySQL original issue as it does this with all versions of MySQL.

# Fix the odd/bug setup
shell> cd /usr/local/mariadb-10.0.2-tmp
shell> mv usr/local/mysql/ ../mariadb-10.0.2 ;
shell> cd ../; # rm -Rf mariadb-10.0.2-tmp

# Postinstallation setup
shell> cd /usr/local/mariadb-10.0.2
shell> chown -R mariadb .
shell> chgrp -R mariadb .

# Next command is optional
shell> cp support-files/my-small.cnf /etc/mariadb-10.0.2.cnf
shell> vi /etc/mariadb-10.0.2.cnf
port = 3310
socket = /tmp/mariadb-10.0.2.sock

shell> scripts/mysql_install_db --defaults-file=/etc/mariadb-10.0.2.cnf --basedir=/usr/local/mariadb-10.0.2 --skip-name-resolve --datadir=/var/lib/mariadb-10.0.2 --user=mariadb
shell> chown -R mariadb /var/lib/mariadb-10.0.2/*

shell> # bin/mysqld_safe --defaults-file=/etc/mariadb-10.0.2.cnf --user=mariadb --datadir=/var/lib/mariadb-10.0.2/ --port=3310 &


shell> # ./bin/mysql --port=3310 --socket=/tmp/mariadb-10.0.2.sock
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 10.0.2-MariaDB Source distribution

Copyright (c) 2000, 2013, Oracle, Monty Program Ab and others.