問題タブ [percona]
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.
mysql - chef_gemの依存関係
私は現在、コミュニティMySQLクックブックを更新して、Perconaのインストールに使用できるようにしています。これは、ストックMySQLの代わりになりますが、HAとクラスタリングを簡単に有効にする機能がいくつか追加されています。
クックブック内で「ruby」レシピを使用できるようになるまで、すべての追加はうまく機能しました。これは、「chef_gem」プロバイダーを使用して「mysql」rubygemをインストールします。これはネイティブ拡張であるため、コンパイルする必要があります。これを行うには、MySQLの開発ファイルをインストールする必要があります。
通常のMySQLバイナリを使用する場合、MySQLはすでにCentosリポジトリにあるため、すべてが正常に機能します。ただし、Perconaパッケージをインストールできるようにするには、リポジトリが「/etc/yum.repos.d」にあることを確認する必要があります。私が抱えている問題は、mysqlgemをインストールする前にchefにその作業を行わせることができないことです。
したがって、システムはMySQL(Percona)の開発ヘッダーファイルをインストールせずにmysql gemをコンパイルしようとしますが、正しく参照されていても、リポジトリがセットアップされていないため見つかりません。
'yum'プロバイダーを使用してこの作業を行う'percona-repo'レシピを作成しましたが、'chef_gem'が実行する前に実行されません。chefには実行用の2つのフェーズがあることを知っています。また、「chef_gem」は、実行リスト全体のどこにあるかに関係なく、コンパイルフェーズですべてのgemを収集し、最初に要求されたすべてのアイテムをインストールすると想定しています。その後、リポジトリレシピが実行されます。
私は次のようなことをするためにRubyレシピをいじってみました:
しかし、これは機能しません。chef_gemは常に私の「precona_repo」レシピの前に実行されるため、パッケージのインストールは失敗します。これまでに到達した場合、rubygemのインストールも失敗することになります。
私がこれをどのように解決できるかについて誰かが何か明るいアイデアを持っているなら、私に知らせてください。
アップデート
Markからの提案のおかげで、「ruby」レシピを更新して、リソースを呼び出して新しいキーとリポジトリをサーバーに追加できるようになりました。
そして今、私はこれらがシェフの実行でアクティブ化されているのを見ることができます。ただし、ファイルシステムを見ると、ファイルが存在しないため、mysqlクライアントパッケージのインストールが失敗します。
yumクックブックを調べてみたところ、yum_keyのプロバイダーが「remote_file」を実行してキーをダウンロードしようとしていることがわかりました。ただし、この'remote_file'は実行されていません。そこで、これを上記のようなリソースとして実行しようとしましたが、名前に変数が含まれているため、効果的に呼び出すことができません。例:
私はここでうさぎのウォーレンを少し降り始めていると思います。私はそれを機能させるために努力し続けますが、それ以上のアイデアは大歓迎です。私は自分が仕事を知っているものを再利用することを好むので、このレシピのリポジトリに直接コーディングするルートをたどらないようにしています。
php - Symfony と Percona
Symfony 2 は Percona をサポートしていますか? または、MySQL に固執する必要がありますか? Debian 6 (squeeze) を実行していて、MySQL をインストールしていますが、Symfony をインストールする前に、Percona の方が (より高速な) 取引になるのではないかと考えていました。
どうも。
mysql - 列または列のセットの関数として主キーを使用できますか
主キーを定義したいテーブルを定義しようとしていますが、列が逆になっています。innodb で可能かどうか疑問に思っていましたか?
テーブルを作成しています
しかし、代わりに私は欲しいPRIMARY KEY (reverse(id))
mysql - Percona pt-query-digest を使用して、特定のデータベースのみのスロー クエリ ログを分析する
Percona ツール スクリプト pt-query-digest は、MySQL のスロー クエリ ログを分析するのに非常に役立ちそうです。特定のデータベースに関連するクエリのみをスクリプトに表示させる方法を知っている人はいますか?
ありがとう
mysql - MySQL inet_aton()が散発的にnullを返す
IPアドレスを含むデータをログテーブルに挿入しています。何らかの理由で、IP列がNULLになることがあります。ほとんどの場合(すべてのレコードの99.9%)、IPは適切に記録されます。
IPは、inet_aton()関数を使用して、符号なしINT列に格納されます。これにより、IPアドレスがドットで区切られた形式(zzz.xxx.yyy.www)から数値形式に変換されます。
MySQLのドキュメントには、INET_ATON()とNULLに関して次のように記載されています。
INET_ATON()は、引数を理解できない場合、NULLを返します。
INET_ATON()は、短い形式のIPアドレス(「127.0.0.1」の表現としての「127.1」など)に対してNULL以外の結果を返す場合と返さない場合があります。
クエリに流れ込むデータをログに記録しており、バインドされているパラメータに実際にはIPアドレスが含まれており、nullではないことを確認しました。それらのIPアドレスは正常に見えます。手動で実行すると
SELECT INET_ATON('zzz.yyy.xxx.www');
結果は、予想どおり数値表現になります。
完全を期すために、コード(注:一見無関係な列を削除):
最後に、関連性があるとは思えませんが、MySQLのバージョン情報は次のとおりです。
私にとって、それは神秘的です。これをさらにデバッグする方法について何か提案はありますか?
mysql - クエリはローカルセットアップにキャッシュされますが、サーバーにはキャッシュされませんか?
プロジェクトのクエリキャッシュで多くの問題が発生しています。ローカル開発マシンと本番サーバーの両方で同じバージョンのMySQLのPerconaフレーバーを実行しています。これで、クエリキャッシュを有効にすると、ローカルマシンで優れた結果が得られます。キャッシュする必要のあるほとんどすべてのクエリは、事実上キャッシュされます。
現在、まったく同じクエリが本番サーバーにキャッシュされていません。すべてがまったく同じです。mysql変数、データベースコンテンツ、コードベース、ログインユーザー、..しかし、本番環境では、ほんの一握りのクエリのみがキャッシュされ、最も重要なクエリはすべてスキップされます。そして、私は理由を理解することはできません:-)
したがって、解決策を探して、トピックテーブルから最新の3つのトピックを選択するために使用される次のクエリを使用しています(これは最も「重い」クエリであり、絶対にキャッシュしたいクエリです!)
それで、最初に、SHOW VARIABLES LIKE '%query_cache%
私に同じ結果を与えてください、両方とも生産時とローカルです:
上記のクエリを実行すると、最初の実行後にローカルにキャッシュされますSHOW PROFILE
。これは、トレースの終わり近くにあることを明確に示しています。
2番目の呼び出しは、期待どおりにキャッシュからクエリを返します。
本番サーバーでは、このクエリを実行してもキャッシュに保存されることはありません。結果セットはまったく同じであり、クエリキャッシュを無効にするステートメントが使用されていないことは明らかです(http://dev.mysql.com/doc/refman/5.1/en/query-cache-operationのマニュアルによると) .html-上記のクエリは、キャッシュするための要件に準拠していると確信しています。)
完全を期すためSHOW PROFILE
に、本番サーバーでの同じクエリの完全な出力は、ここに貼り付けられます:http: //pastebin.com/7Jm5rmVd
また、構成は両方のサーバーでまったく同じですが、私のローカルバージョンは5.5.27であり、本番5.5.17-55のものよりもわずかに新しいことに注意してください。これが問題なのかもしれません..?
ローカルサーバーと本番サーバーの両方からの完全な出力を比較して、SHOW VARIABLES;
不足しているものがないかどうかを確認しましたが、システムのタイムゾーンとログファイルへのパスなどを除いて何も変わりません。
では、次にどこを探すべきか知っている人はいますか?または、これを引き起こしている可能性のある手がかりはありますか?
java - 病院のキャッシャーのためのマルチテラーモデル
私は現在、病院管理システムを開発しています。私のアプリケーションでは、病院で24時間年中無休で働く複数のレジ係がいて、患者からお金を集めてレシートバウチャーを発行するか、払い戻しの場合に患者に返金します。
現在、私はトランザクションごとに従業員のユーザーアカウント番号を保存しています。その日の終わりに、従業員は会計部門に送金する必要のある合計金額で行ったトランザクションのリストを印刷します。しかし、私は誰かが私に、従業員が彼/彼女のキャッシュボックスに持っている合計金額でのmsitakeを防ぐために必要な警察が何であるかを教えてくれる必要があります。
経理部長であっても、他人がレコードを削除したり、削除したりするのを防ぐ必要がありますか?
私は銀行の出納係として何かが必要だと思いますが、私を助けたり、この部分のために私の警察に何を入れる必要があるのかを正確に説明するための何かを見つけることができません。
私が使用しているのは、GUIおよびプログラミング言語としてのJava、データベースとしてのMySQL(Percona)、レポートおよび印刷ソリューションとしてのCrystalReportsです。
mysql - percona mysql 5.5.25a サーバーのレプリケーションが非常に遅い
MySQL 5.0.95 マスターのスレーブとして Percona 5.5.25a サーバーを使用して MySQL レプリケーションをセットアップしました。スレーブはマスターに追いつくのが非常に遅いです。現在、約 4 日間マスターに遅れをとっています。マスターとスレーブの両方が VM ノードで実行されます。両方のノードの物理構成は同じです。MySQL の構成も両方で同じです。
スレーブを 5.0.95 に変更すると、スレーブはすぐに追いつき、マスターに遅れることはありません。
エンジンとして Innodb を使用しています。最初に、レプリケーションが開始されたとき、スレーブの Innodb ステータスは、レプリケーション中にテーブルにロックがあったことを示していました。このテーブルを更新するたびに、ロックが約 15 ~ 20 分間保持されていました。レプリケーションでこのテーブルを無視しました。この後、スレーブで観察されるロックはありません。しかし、スレーブの QPS はわずか 4 です。このレートでは、スレーブがマスターに追いつくことはありません。
これを解決する方法についての提案は大歓迎です。
mysql - トランザクションの挿入または更新を伴うMySQLトリガー
私はmysqldb&javaを使用しているので、私のアプリケーションではトリガーを使用する必要がありますが、挿入または更新中にそれを保存する必要があります。テーブルAに新しいレコードを挿入すると、トリガーは別のテーブルBに情報を挿入する作業を行います。また、テーブルAのレコードを更新する場合、トリガーはテーブルBのレコードを更新します。
更新中または挿入中のトランザクションがロールバックされた場合、これはトリガーによって行われた変更をロールバックしますか?? !!
mysql - Mysql2::エラー: 文字列値が正しくありません Rails 3 UTF8
他の言語 (Web ページのタイトルとメタの説明) で大量のデータを処理するアプリを持っています。最近、MySQL から Percona に切り替えたところ、MySQL が黙ってエラーを起こしたと思われるすべてのエラーが見つかりました。
私が修正できなかった唯一のものは
私は現在の質問と回答を見てきましたが、それらはすべてUTF8に変換するための既知のエンコーディングを想定しています.エンコーディングはわかりません.
私がやりたいのは、Rails で UTF8 に変換することです (force_encoding を試しましたが、うまくいきませんでした)。または、UTF8 かどうかを確認し、そうでない場合は削除します。