1967 件中 771 - 780 件を表示
« 前の 10 件 | 次の 10 件 »
Displaying posts with tag: MySQL (reset)
MySQL 8.0.1からJOIN_ORDERヒントが書ける

こんな、ORDER BY狙いのキーを使いたくなるクエリーがあるじゃろ?

mysql80> EXPLAIN SELECT Name, Language, Population, Percentage FROM CountryLanguage LEFT JOIN Country ON Country.Code= CountryLanguage.CountryCode WHERE Country.continent = 'Asia' ORDER BY Percentage LIMIT 5;
+----+-------------+-----------------+------------+------+------------------------------+---------+---------+--------------------+------+----------+----------------------------------------------+
| id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | filtered | Extra |
+----+-------------+-----------------+------------+------+------------------------------+---------+---------+--------------------+------+----------+----------------------------------------------+
| 1 | SIMPLE | Country | NULL | ALL | …
[さらに読む]
MySQL8.0 Descending Indexのサポート

MySQL8.0から、Descending Indexがサポートされる。
これによりMySQL5.7と比較して、大きなテーブルでの降順(DESC)のデータ参照処理を、高速に実行する事が出来るようになる。小さいテーブルに関しては、既存のMySQL5.7でもインデックスが利用出来るので、それ程差は出ないかと思います。

MySQL8.0.1で、Sakila Sampleデータベースのrentalテーブルを参照した場合 (INDEXはASCで作成されている)


mysql> select @@version;                                              
+-----------+
| @@version |
+-----------+
| 8.0.1-dmr |
+-----------+
1 row in set (0.00 sec)

mysql> show create table rental\G                                     
*************************** 1. row ***************************
       Table: rental
Create Table: CREATE TABLE `rental` (
  `rental_id` int(11) NOT NULL AUTO_INCREMENT,
  `rental_date` datetime …
[さらに読む]
xtrabackupが実行中かどうかをSQLだけで確認する思考実験

はじまりは
畜生ペンギン@keny_lala のひとこと。

xtrabackupが今稼働中だよーってことがOSコマンドじゃなくてMySQLから分かる方法ありませんか?— kentarokitagawa (@keny_lala) 2017年4月13日



Percona Serverには LOCK TABLES FOR BACKUP とかあったよなと思いつつ、たぶんPercona Serverじゃないので置いておく。 xtrabackup-2.4.6のソースコードをナナメに読んでいくと、 SET SESSION wait_timeout = 2147483

[さらに読む]
MySQL 8.0.1の新顔、GROUPING集約関数

TL;DR WITH ROLLUPの結果行をHAVING条件に書けるようすることができる。 それ以外の時には使わない。 MySQL :: MySQL 8.0 Reference Manual :: 13.20 Miscellaneous Functions 使い方。 そもそも WITH ROLLUP の使い方を知らないと楽しくもなんともないので WITH ROLLUP の説明から。 まずは WITH ROLLUP なしバージョン(SUM関数を噛ませてるのはあとで WITH ROLLUP した時のため)

mysql80> SELECT Continent, Name, SUM(Population) AS Population FROM country GROUP BY Continent, Name;
+---------------+----------------------------------------------+------------+
| Continent | Name …
[さらに読む]
MySQL 8.0.1でutf8mb4_ja_0900_as_csが導入された


Sushi = Beer ?! An introduction of UTF8 support in MySQL 8.0 | MySQL Server Blog (ユーザーによる日本語訳: 寿司=ビール問題 : MySQL 8.0でのUTF8サポート入門 (MySQL Server Blogより) | Yakst)で言及されていた日本語用の照合順序 utf8mb4_ja_0900_as_csMySQL 8.0.1 で実装されていたので試してみた。

mysql80> SHOW COLLATION LIKE 'utf8%ja%';
+-----------------------+---------+-----+---------+----------+---------+
| Collation | Charset | Id | Default | Compiled | Sortlen |
+-----------------------+---------+-----+---------+----------+---------+
| utf8mb4_ja_0900_as_cs | …
[さらに読む]
mysqlディレクトリーに知らない.ibdファイルがある in MySQL 8.0.0

InnoDBログをcatしたら見知らぬibdファイルの名前が書いてあることに気が付いた。 mysql/character_sets.ibd なるファイルに書き込みをしているようだが、

mysql80> SHOW TABLES FROM mysql LIKE '%char%';
Empty set (0.00 sec)

そんなテーブルは存在しない。

$ ll data/mysql/character_sets.ibd
-rw-r----- 1 yoku0825 yoku0825 163840 Apr 3 14:44 data/mysql/character_sets.ibd

ファイルは確かにある。 なんだこれ…? と思ってたら、なんか他にもいっぱいあった。

$ diff -y <(./use -sse "SHOW TABLES FROM mysql" | sort) <(ls data/mysql/*.ibd | perl -nle 's/.+\///; s/\.ibd//; print' | sort)
> catalogs
> character_sets
[さらに読む]
MySQL8.0におけるROLEの活用

MySQL8.0におけるROLEによるユーザー権限管理についての確認。
MySQL5.7からProxy Userを利用する事で、ROLEと同じように権限をまとめて管理する事が出来るようになりましたが、MySQL8.0からは正式にROLEが追加されて、複数ROLEの切り替えやROLEのネストが出来るようになります。これにより、多くのユーザーを管理するような環境では、権限管理工数やミスが削減出来る事になるかと思います。

7.3.4 Using Roles
https://dev.mysql.com/doc/refman/8.0/en/roles.html

ROLEの作成とROLEへの権限付与

mysql> CREATE ROLE role80;
Query OK, 0 rows affected (0.01 sec)

mysql> GRANT ALL on DEMO.* TO role80;
Query OK, 0 rows affected (0.05 sec)

mysql> create user user01 identified by …
[さらに読む]
MyNA 会 201703 で MySQL のDB利用者向けベストプラクティスの話してきた

MySQL のプロダクトマネジャーである Matt Lord さんをお招きして 日本MySQLユーザ会会 を開催しました。

当日はベストプラクティス・・・というかDBAからのお願いを発表してきました。
DB利用者に意識してほしいことを中心に取り上げてみました。

My MySQL Best Practices from Satoshi Mitani

Matt さんからはGroup Replication を使った高可用構成と、さらにGroup Replicationのセット複数並べてシャーディングする InnoDB Cluster を紹介がありました。

MySQL High Availability …

[さらに読む]
PSMによるMySQL Cloudインスタンスの作成

Oracle Cloud MySQL Serviceでは、GUIベースのダッシュボードだけでは無く、APIやPaaS Service Manager (PSM)コマンドライン・インタフェース(CLI)を利用してインスタンスを管理する事が可能です。GUIでの管理も使いやすくて良いのですが、Provisioningの自動化による工数削減にはAPIかCLIの活用が必用になるかと思います。
今回は、PSMを利用したインスタンスの作成と削除方法を此方で紹介します。先ずは、MySQL Cloud Serviceを検証環境等で活用してみて頂ければと思います。

Japanese Manual
https://docs.oracle.com/cd/E60665_01/jcs_gs/PSCLI/GUID-A63D73BD-4F22-472D-9E04-D998CEE68A00.htm

[さらに読む]
sql_select_limitを設定したらXtraBackupがsignal 11で転けた

TL;DR SET GLOBAL sql_select_limit = ? で結果セットのサイズを制限していると、xtrabackupが内部的に発行している SHOW ステートメントの出力結果が切り詰められてクラッシュすることがある。 xtrabackupで遊んでいたら、ある時からおもむろにsignal 11で落ちるようになった。それ以前はフツーにバックアップ取れてたのに。

$ innobackupex -S /usr/mysql/5.7.17/data/mysql.sock -uroot .
170321 10:43:26 innobackupex: Starting the backup operation

IMPORTANT: Please check that the backup run completes successfully.
At the end of a successful backup run innobackupex
prints "completed OK!".

Unrecognized character \x01; marked by <-- HERE after <-- HERE near column 1 at - line 1374.
170321 10:43:26 Connecting to MySQL server host: localhost, user: root, password: not set, port: …
[さらに読む]
1967 件中 771 - 780 件を表示
« 前の 10 件 | 次の 10 件 »