タグ付けされた質問 「mysql-5.6」

MySQLバージョン5.6-検索目的でmysqlもタグ付けしてください。

2
InnoDB:エラー:テーブル「mysql」。「innodb_table_stats」はmysql 5.6へのアップグレード後に見つかりません
5.5からmysql 5.6にアップグレードしたところ、起動時にログにこのようなメッセージが散らばっています ここで解決策を見つけましたが、公式ではないようです。 http://forums.mysql.com/read.php?22,578559,579891#msg-579891 2013-12-06 21:08:00 7f87b1d26700 InnoDB: Error: Table "mysql"."innodb_table_stats" not found. 2013-12-06 21:08:00 7f87b1d26700 InnoDB: Recalculation of persistent statistics requested for table "drupal"."sessions" but the required persistent statistics storage is not present or is corrupted. Using transient stats instead. 2013-12-06 21:08:07 7f903c09c700 InnoDB: Error: Table "mysql"."innodb_table_stats" not found. …

6
MySQL単一テーブルの1,000万行以上をできるだけ速く更新する方法は?
ほとんどのテーブルでMySQL 5.6とInnoDBストレージエンジンを使用します。InnoDBバッファープールのサイズは15 GBで、Innodb DB +インデックスは約10 GBです。サーバーには32GBのRAMがあり、Cent OS 7 x64を実行しています。 約1,000万件以上のレコードを含む1つの大きなテーブルがあります。 24時間ごとにリモートサーバーから更新されたダンプファイルを取得します。ファイルはcsv形式です。私はそのフォーマットを制御できません。ファイルは最大750 MBです。MyISAMテーブルに行ごとにデータを挿入しようとしましたが、35分かかりました。 ファイルから10-12のうち1行につき3つの値のみを取得し、データベースで更新する必要があります。 このようなことを達成する最良の方法は何ですか? これを毎日する必要があります。 現在、Flowは次のようになっています。 mysqli_begin_transaction ファイルを1行ずつ読み込む 各レコードを行ごとに更新します。 mysqli_commit 上記の操作を完了するには約30〜40分かかりますが、これを実行している間、他の更新が行われているため、 ロック待機タイムアウトを超過しました。トランザクションを再開してみてください アップデート1 を使用して新しいテーブルにデータを読み込みますLOAD DATA LOCAL INFILE。MyISAM 38.93 secでは、InnoDBでは7分5.21秒かかりました。それから私はやった: UPDATE table1 t1, table2 t2 SET t1.field1 = t2.field1, t1.field2 = t2.field2, t1.field3 = t2.field3 WHERE t1.field10 = t2.field10 Query OK, …

3
MySQL 5.6からデフォルトでquery_cache_typeが無効になっているのはなぜですか?
MySQL 5.6にアップグレードし、dbサーバーのロードが大幅に増加query_cache_typeするのを確認し始め、最終的には5.6からデフォルトでオフになっていることがわかりました 。 再度有効にし、読み込みが減少するのを確認します。なぜ、MySQL 5.6からデフォルトでこの値が無効になっているのですか?有効にすると問題が表示されません。

2
mysqlロック待機タイムアウトが超過しました。トランザクションを再開してみてください
私たちは、長年にわたって実行されているJavaアプリケーションを実行しています。バックエンドはMySQLです。最近、mysql 5.6に更新されました。すべてが正常に実行され、先週はこのエラーが発生し始めました。ロック待機タイムアウトが超過しました。終了を停止しないように見えるトランザクションを再起動してみてください。このエラーを停止するにはどうすればよいかわかりません。突然それが起こっている理由
26 mysql  mysql-5.6 

3
MySQLでマテリアライズドビューを作成する最良の方法
MySQL 5.6を使用しています。Oracleのようにマテリアライズドビューを作成することはできません。Flexviewのような1つまたは2つのソリューションを見てきました。 MySQLでマテリアライズドビュー(Oracleのような自動更新)を最小限の複雑さで作成する最良の方法を教えていただけますか?

2
MySQL-行のカウントにcount(*)とinformation_schema.tablesを使用することの違い
数百万行のテーブル内の行数をすばやくカウントする方法が必要です。Stack Overflowで「MySQL:行数をカウントする最も速い方法」という投稿を見つけました。これは私の問題を解決するように見えました。バユアはこの答えを提供しました: SELECT table_rows "Rows Count" FROM information_schema.tables WHERE table_name="Table_Name" AND table_schema="Database_Name"; スキャンの代わりにルックアップのように見えるので私は好きでしたので、高速でなければなりませんが、テストすることにしました SELECT COUNT(*) FROM table パフォーマンスの違いがどれほどあったかを確認します。 残念ながら、以下に示すように異なる回答が得られます。 質問 回答が約200万行異なるのはなぜですか?全表スキャンを実行するクエリの方が正確な数値であると推測していますが、この遅いクエリを実行せずに正しい数値を取得する方法はありますか? 実行ANALYZE TABLE data_302しましたが、0.05秒で完了しました。クエリを再度実行すると、34384599行という非常に近い結果が得られますが、それでもselect count(*)34906061行と同じ数ではありません。分析テーブルはすぐに戻り、バックグラウンドで処理されますか?これはテストデータベースであり、現在は作成されていないことに言及する価値があると思います。 テーブルがどれだけ大きいかを誰かに伝えるだけの場合は誰も気にしませんが、その数字を使用してデータベースを照会する「同じサイズの」非同期クエリを作成するコードに行カウントを渡したいと思いました。並行して、「Alexander Rubinによるパラレルクエリの実行によるクエリパフォーマンスの低下」で示した方法に似ています。現状では、最高のIDを取得するだけでSELECT id from table_name order by id DESC limit 1、テーブルが断片化しすぎないように願っています。
15 mysql  mysql-5.6  count 

1
選択されたクエリにMySQLコミットデータが表示されない
コンテキスト:使用されるフレームワークはSpringであり、すべてのクエリはJdbcTemplateで実行されます。Mysqlサーバーのバージョンは5.6.19です。tableでありInnoDB table、デフォルトのようなauto commit分離レベル反復-読み取りが設定されていると。 問題:Insertトランザクション内で発生し、select挿入された同じデータを読み取ると、データが表示されません。select実行した後insertとした後、insertトランザクションが持ちますcommited。 mysqlでbinログと一般ログを有効にしました。以下の関連ログ bin-log: SET TIMESTAMP=1438265764/*!*/; BEGIN /*!*/; # at 249935389 #150730 14:16:04 server id 1 end_log_pos 249935606 CRC32 0xa6aca292 Query thread_id=40 exec_time=0 error_code=0 SET TIMESTAMP=1438265764/*!*/; insert into user_geo_loc_latest(user_id, lat, lng) values(x,y,z) on duplicate key update lat=y, lng=z /*!*/; # at 249935606 #150730 14:16:06 server id 1 end_log_pos …


3
MySQLインスタンスが「同期インデックスを実行中」にストールする
問題 InnoDBテーブルを持つデータベースを実行する(ほとんどの場合)MySQL 5.6.20のインスタンスは、すべてのINSERT、UPDATE、およびDELETEクエリが「クエリ終了」状態のままで、1〜4分間、すべての更新操作に対して時々ストールします。これは明らかに最も不幸なことです。MySQLのスロークエリログは、非常に些細なクエリでさえ、異常なクエリ時間を記録しています。何百ものものが、失速が解決された時点に対応する同じタイムスタンプで記録されます。 # Query_time: 101.743589 Lock_time: 0.000437 Rows_sent: 0 Rows_examined: 0 SET timestamp=1409573952; INSERT INTO sessions (redirect_login2, data, hostname, fk_users_primary, fk_users, id_sessions, timestamp) VALUES (NULL, NULL, '192.168.10.151', NULL, 'anonymous', '64ef367018099de4d4183ffa3bc0848a', '1409573850'); デバイス統計は増加していますが、この時間枠ではI / Oの負荷は過剰ではありません(この場合、上記のステートメントのタイムスタンプによると、更新は14:17:30から14:19:12に失速しました)。 # sar -d [...] 02:15:01 PM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util …

3
MySQLにすべてのインデックスを強制的に強制するにはどうすればよいですか?
FORCEインデックスに関する記事を読みましたが、MySQLを強制的にIGNORE ALLインデックス化するにはどうすればよいですか? 試しましたがSELECT * FROM tbl IGNORE INDEX(*)、うまくいきませんでした。 なぜ私(および他の人)がこれを行う必要があるのか​​については、たとえば、次のようにtldでリファラー統計を要約する必要がありました。 SELECT count(*) as c, SUBSTRING ( domain_name, LENGTH(domain_name) - LOCATE('.', REVERSE(domain_name)) + 2 ) as tld FROM `domains_import` IGNORE INDEX(domain_name) GROUP BY tld ORDER BY c desc LIMIT 100 ...しかし、私は常に定義されているインデックスを確認するか、Explainを使用してどのインデックスを使用するかを決定する必要があります。単に書いてIGNORE INDEX ALL、気にしないのは非常に便利です。 誰かが構文やハックを知っていますか?(MySQL定義テーブルを介した数十行は、実際にはショートカットではありません)。 チャットディスカッションから追加: Bechmark: インデックスなし= 148.5秒 インデックス= 180秒で、まだデータの送信で実行中SSDアレイは非常に強力であるため、データキャッシュはほとんど気にしません... ベンチマークの定義: CREATE …
12 mysql  index  mysql-5.6 

8
MySQLクライアントにmylogin.cnfからパスワードを読み取らせるにはどうすればよいですか?
パスワードをインタラクティブに指定する必要なく、mysqlクライアントをmysqlサーバーに接続しようとしています。実行した手順: 1)最初にmylogin.cnfファイルを作成します $ mysql_config_editor set --user=<user> --password --host=<host> Enter password: 2)ファイルが正常に作成されました: $ ls -la .mylogin.cnf -rw-------. 1 urmt urmt 136 Dec 19 11:01 .mylogin.cnf $ mysql_config_editor print --all [client] user = <user> password = ***** host = <host> 3)MySQLクライアントを使用して接続する $ mysql <dbname> ERROR 1045 (28000): Access denied for user '<user>'@'<host>' …

2
MySQLのインストールに関する問題
まず第一に、長さを失い、この投稿は非常に長く、ある程度の背景が必要です。ノイズからの信号を見分けるのは私にとって困難でした。これの一部が関連していない場合はご容赦ください。 数週間前、私は自発的にWindows 10へのアップグレードを選択しました。その後、最終的に、不要になったPythonのインストールを削除することにしました。最新の2.7(および3.4​​.3のみ)を削除した後、コンピューターが予期せずクラッシュするまで、すべてが問題なく動作するように見えました。それ以来、Windows 10は決して同じではなく、非常に信頼性が低くなりました。 起動時にWindows 7にダウングレードすることを余儀なくされました。2つのエラーメッセージが表示されました。1つはpython dllが見つかりませんでした、もう1つは次のとおりです。 プロシージャエントリポイントRpcImpersonateClientContainerがダイナミックリンクライブラリRPCRT4.dllで見つかりませんでした この2番目のエラーは、非常に重要です。大ざっぱな検索はthisを指していますが、これはWindows 10のみのプロセスであることを示しています。 私は何回かpython 2.7と3.4.3を再インストールしてアンインストールできましたが、python dllエラーはもう表示されませんでした(そのため、現在、マシンにPythonバージョンとして3.4.3しかありません)。 ただし、2番目のエラーが引き続き発生します。私は自分のマシンのすべてのMySQLサービスをアンインストールしようとしましたが、2つを除いて大部分は成功しました。 MySQLコネクタ6.9.5およびMySQL for Excel 1.3.3 どうしてもアンインストールできません。この回答で解決策を試しましたが、次のエラーが発生しました: OpenServiceが1060に失敗しました: 指定されたサービスはインストールされたサービスとして存在しません。 現在、Microsoftインストーラー(拡張子msi)を介してMySQLコミュニティエディション5.6.26.0を再インストールしようとしています。私はそれをクリックして、「関連情報を収集しています...」のようなウィンドウを表示して、それが消えるだけです。 注:Webコミュニティ経由でインストールしようとすると、私はなんとか次の画面を表示し(このプログラムで変更を加えますか?)、その後再び消えます。 どちらもWindowsプロセスでは見つかりません。 ただし、Webコミュニティを数回実行した後、MySQL Installer -Community変更/アンインストールするリストにインストール済みプログラムとして表示されます。変更しようとしても何も起こりませんが、アンインストールしようとすると: プロシージャエントリポイントRpcImpersonateClientContainerがダイナミックリンクライブラリRPCRT4.dllで見つかりませんでした 繰り返しになりますが、2番目のエラー(アンインストールはなんとかできます)。 後で別のグーグル検索、このフランスのスレッドが飛び出した。私のフランス語はせいぜいずさんなものですが、唯一の返答は、破損したDLLとおそらく新規インストールを示唆しているようです。 おそらく関係のないメモについて:私のコンピュータは、起動するたびに更新するように求めてきました。数分後、おなじみのロゴが「シャットダウン」オプションをポップします。アップデートをインストールすることを選択するたびに、どうやらそれはインストールされたようで、起動時にさらにいくつかの設定を行いました。しかし、毎回、それはもう一度起こりました。 さらに徹底的にチェックしたところ、KB3083186が何度もインストールされていたため、.NET 4.6を修復し、自動更新を無効にしたところ、問題がないようです。 私のマシンの関連する詳細は次のとおりです: OS:Windows 7 Home Premium、Service Pack 1。 システム: HP Pavilion dm4ノートブックPC プロセッサー: Intel Core i5-3210 CPU 2.50 …


2
共用体が整数を天井にキャストする際の問題(10進数)
私はこのシナリオを持っています。MySQLが最大の10進数値を取り、他の値をそれにキャストしようとしているようです。 問題は、このクエリが外部ライブラリによって生成されるため、少なくともこのレベルでは、このコードを制御できません。これを修正する方法を知っていますか? SELECT 20 AS x UNION SELECT null UNION SELECT 2.2; +------+ | x | +------+ | 9.9 | -- why from 20 to 9.9 | NULL | | 2.2 | +------+ 期待される結果 +------+ | x | +------+ | 20 | -- or 20.0, doesn't matter really in my …

3
.ibd、.frm、およびmysqllogbinファイルからのMySQLテーブルの復元
何らかの理由で、(MySQLまたはphpmyadminに関係なく).frmと.ibdファイルに保存されている自分のテーブルを開こうとすると、構文エラーが表示されるか、存在しないと表示されます。 これと同様の問題があった他の投稿を読みましたが、innodb_file_per_table有効になっているかどうかを確認する方法がわからず、全体的に本当に混乱しています。また、mysql-bin.000002ファイルのコピーをtxtファイルに変換したので、データベースのデータが完全に失われていないことがわかります。 データベースは昨年作成されました。これらのmysql-bin.00000ファイルは6つありますが、なんらかの理由で.000002最大です。現在、すべてのデータベースの.ibdおよび.frmファイルがありますが、MySQLに、または少なくとも読み取り可能なものに復元する方法について、私は途方に暮れています。 Windows 2003 ServerでWampServer 2.4とMySQL 5.6.12を使用しています。また、InnoDBでプラグインをダウンロードする必要がありますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.