Community journal

The latest from the MySQL community

Ideas, releases, practical guides, and perspectives from the people building with MySQL.

Follow the feed
Showing entries 541 to 550 of 3186 « Previous | Next »
MySQL キャラクタセット(文字コード)の変換方法おさらい

ALTER TABLE xxx MODIFY 〜 でキャラクタセットを変換するのと、ALTER TABLE xxx CONVERT TO〜 で変換するのは、どう違うんだっけ? ってなったので、おさらい。

データベースのデフォルトキャラクタセット

MySQL はカラム単位でキャラクタセット( …

[さらに読む]
MySQL ShellのダンプとMDSへのインポート

はじめに

今回はずっと触りたかったMySQL Shellのダンプをやりつつ、 最後は前回作ったMDS相手にインポートしてみようかと思います。

MDSにインポートするためにはociクライアントの設定や、オブジェクトストレージが必要なので、それらを途中で設定していきます。

準備

1. 手元のdbdeployerで作成したMySQL8.0.21の環境に、公式が出しているテスト用データベースたちを適当に入れていきます。

自分はgit …

[さらに読む]
今日は、MySQL8.0徹底入門に沿ってDockerインストールの日。

目次

[さらに読む]
MySQL のパーティショニングで速くなる?ならない?問題、実験の続き

この記事は、

MySQL のパーティショニングで速くなる?ならない?問題、あらためて実験してみた

の続きのエントリとなります。

先のエントリのコメント欄に、

先ほどの「パーティショニングあり/なしの速度差の原因」ですが、端的に言うと「アクセス経路の違い」と「スキャンするデータの局在性」でしょうね。

と書きましたが、「それなら非パーティショニングテーブルでも、スキャン/抽出するデータ行がまとまった場所に集まっていれば速い(遅くならない)のでは?」という疑問が湧くと思います。

先のエントリで使った実験データは(詳細の説明をしていませんでしたが)以下のとおり主キーの順番≠日時列の順番で入っていました。

元データ(部分) mysql> …

[さらに読む]
MySQL 8.0.21のDockerイメージがRESTARTステートメントに対応したって話と、そもそもRESTARTステートメントがどうやってmysqldを再起動するのかとって話と

TL;DR

  • RESTART ステートメントの本質は「終了コード16で mysqld を停止」するだけ
    • 親プロセス( mysqld_safe, systemd, dockerd とかとか) が「終了コード16の時はもう一度 mysqld を起動する」という実装をしなければならない
  • RESTART ステートメントの処理の中で、「 SHUTDOWN 権限があるか」「 MYSQLD_PARENT_PID 環境変数がセットされているか」を判定してから、 SIGUSR2 シグナルを使って終了コード16での終了に持っていく
    • 8.0.20までのDockerイメージの entrypoint.sh は MYSQLD_PARENT_PID を渡していなかったので、その評価のところでfalseになって …
[さらに読む]
MySQL のパーティショニングで速くなる?ならない?問題、あらためて実験してみた

先日、第 17 回 PostgreSQL アンカンファレンス@オンライン の中で、うっかり

「MySQL ではパーティショニングで速くなるケースが思ったよりも少ないんですよね」

的なことを口走ったところ、

ポスグレよりはマシだと思ってました(笑)— 明治㌠から㍽㍼㍻経て令和 (@meijik) September 24, 2020

プロの方に見つかってしまいました(笑…いや怖い)。

実際のところ、自分で使っていても(DELETEよりパーティションのDROPが速いとか)限られたケース以外で高速化した実感がないのですが、恐る恐るあらためて実験してみました。

【注】 今回は更新性能については触れません(特定の条件でパーティショニングを使うと更新処理が速くなることは確認済みです)。

実験内容

MySQL …

[さらに読む]
MySQL Database Serviceを触るまでのお話

はじめに

MDS(MySQL Database Service)が東京リージョンにも来ました!

(^O^) <祝!

というわけで、朝4時に起こされたこともあり、時間もできたんで久々にOCIを触ってみたんですが、作りたいものが簡単に作れて楽しかったです。

ただ、公式チュートリアルにMDS関連がまだ無いこと、MDS系だとlefredさんのブログとか …

[さらに読む]
Debian / UbuntuあたりでMySQLのrootのパスワードが変更できないように見える件

TL;DR

  • mysql-community-serverをインストールした時に rootのパスワードどうする? パスワードなしでUNIX socketベースの認証をするなら空っぽにしておいて と聞かれませんでしたか?

    • これを空っぽにしておくと、 root@localhost が auth_socketプラグインを使うようになってパスワードを一切合切受け付けなくなる

lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqu Configuring mysql-community-server tqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk

x Please provide a strong password that will be set for the root account of your MySQL database. Leave it blank to enable x

x password less login using UNIX socket based authentication. x

x …
[さらに読む]
MySQL mysql_config_editor&expect

 これは、自動化ツールでmysql_config_editorコマンドを使用する可能性がある人を助けるためのメモです。 

mysql_config_editorはパスワード引数を取らないため、mysql_config_editorを使用しようとする.my.cnfファイルにパスワードを設定する前に自動化ツールが失敗する可能性があります。 

expectツールを使用しても、それは可能で非常に簡単です。 

 yum -y install expect  

apt-getでも機能します。 


したがって、この例では、単純なbashスクリプトバージョンを示します。 

1つ目は、ログインパスが機能しない... 

mysql --login-path=local

ERROR 1045 (28000): Access denied for user


…

[さらに読む]
Update for last week (2020-09-14 ~ 2020-09-20)

MySQL Weeklyでは1週間ごとにMySQLのrelease-note, bug, official blog, organizationによるblog, 個人のblogをまとめ紹介しています。
更新は月曜 10時(AM)です。先週一週間のMySQL関連の更新を再確認するのにご活用ください。

また、このブログ記事はGitHub上で管理されていますMySQL-weekly repository。Issue, pull-request歓迎です。(完全に同期できているわけではありません)

Release note

( …

[さらに読む]