問題タブ [mariadb]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - How to replace MySql with MariaDb in WAMP?
I have a Wamp server installed on Windows and it works perfectly. This article at the Slashdot inspired me to migrate from MySql to MariaDb and this question states that I can uninstall mysql and install MariaDb and it will work fine. However on Windows "Uninstall programs" section at control panel doesn't list something like MySql, i have only WampServer 2.2. Consequently, how can i replace MariDb with MySql on Windows or do i have to install php, apache, mariadb seperately?
mysql - INFORMATION_SCHEMA を変更したり、トリガーや外部キーを追加したりする方法は?
mysql の機能を拡張するためにいくつかのメタデータを作成しようとしていますが、データベース INFORMATION_SCHEMA にテーブルを作成できません。別のデータベースを作成してそこにメタデータを入れることができると思っていましたが、テーブルから INFORMATION_SCHEMA DB のいくつかのテーブルへの外部キーが必要です。それにもかかわらず、それらを作成しようとするとエラーが発生します。次に、変更の通知を受け取るトリガーを作成できると考えましたが、トリガーはテーブルに関連付けられており、そのデータベースを変更できないため、トリガーも作成できません。
具体的には、および他のいくつかを参照するいくつかのテーブルがinformation_schema.schemata(schema_name)
ありinformation_schema.schemata(columns)
ます。これらの外部キーを使用できるようにしたいのですがON UPDATE CASCADE ON DELETE CASCADE
、それ以外の場合は、何も参照していないテーブルにいくつかの行があり、それを許可できません。
MySql 5.3を使用するmariaDB 5.5.30を使用しています。
mysql - 結合からテーブルの最新の行を返す
私は2つのテーブルを持っています。それらを表Aと表Bと考えてください。
テーブル A には、その中にあるもののリストがあります。
テーブル Bには、テーブル Aのものを指すエントリが含まれる場合があります。
つまり、テーブル A のすべての行に対して、テーブル B に (テーブル B の ID 列を介して) リンクされている行が 0 行またはn行ある可能性があります。
私がしたいことは、テーブル A からのすべての行 (すべての列) とテーブル B からの 1 列のリストを返す何らかの種類の JOIN を使用して 1 つの SELECT ステートメントを実行することです。タイムスタンプ、そして私は最新のタイムスタンプが欲しい)。
つまり、SELECT ステートメントでテーブル A の各行に対して 1 行を返すようにします。結果セットの列の 1 つはテーブル B のデータであり、対応する最新のエントリからデータを取得する必要があります。表 A の行。
私はこれを行う方法について本当に途方に暮れています。JOIN の ON 句に "TableB.created_on = max(TableB.created_on)" を追加してみました。
mysql - MySQL への MariaDB 5.5 のインストール
Windows 7 デスクトップで MySQL の代わりに MariaDB を使用しようとしています。以下は、これまでに行った手順です。
- 私のPCには以前にMySQLがインストールされていました。
- そのMySQLをアンインストールしていません。
- mariadb.org から mariadb-5.5.30-win32.msi をダウンロード
- mariadb-5.5をインストールしましたが、インストール中にサービス名を変更するように求められました(デフォルトでは、サービス名をMySQLとして、ポート番号を3306として表示していました)。MySQLが同じサービス名とポート番号でインストールされているためです。そこで、サービス名をMariaDB、ポートを3305に変更しました。
HediSQL からポート番号: 3305 および localhost で接続すると、MariaDB に接続でき、MySQL と同じように 4 つの既定のデータベース (information_schema、mysql、performance_schema、および test) が表示されます。
HediSQL からポート番号 3306 (つまり、以前にインストールした MySQL のデフォルトのポート番号) で接続できるのと同じ方法で、古い MySQL に接続し、他のアプリケーション データベースを表示することができました。
今まではまったく問題ありません。
しかし、以下のコマンドを使用して MySQL に接続するために使用したように、コマンド ラインから MariaDB に接続する方法: mysql -uroot -proot、つまり MySQL クライアント。
また、MariaDB 5.5/bin では、すべての .exe ファイル (いくつかの追加の .exe ファイルを除く) が MySQL/bin と同じであることがわかります。内部で同じ MySQL サーバーを使用していますか。はいの場合、MariaDB を個別にインストールする必要があるのはなぜですか?
MariaDB を使用するには、アプリケーション DB を MySQL から MariaDB にインポートする必要がありますか?
これら2つのDBの間で本当に混乱しています。助けてください。
よろしく、 サンディップ
mysql - SUM カラムと GROUP BY 日付 MySQL (MariaDB)
これは私のデータベースの例です (巨大なデータベース、1 つのテーブル)。MariaDB を使用しています。
DATE までに SIZE 列と FILES 列を合計しようとしています。たとえば、2013 年 1 月 6 日の場合、サイズは 4800 になり、FILES は 44 になります。私が試したクエリは
...しかし、それは総計を与えるだけです。
nginx - 設定されていないユーザーでMariaDBにアクセスできます
大きな問題があります。サーバーにルートとして入力すると、次のように入力します。
ユーザー test_user が存在しないことに注意してください。パスワードなしで MariaDB に入力することもできます。
どのユーザーもアクセスできないように mariadb のセキュリティを構成するにはどうすればよいですか?