ããã¯ããªã«ãããããŠæžãããã®ïŒ
MySQL 8.4ããªãªãŒã¹ãããŠãã4ã¶æã»ã©çµã£ãã®ã§ããããã1床ã€ã³ã¹ããŒã«ããèŠãŠãããããªãšããããšã§ã
ãªãªãŒã¹äºæ ã®ãã£ããã¢ãããããŠãããŸãã
MySQL 8.4
MySQL 8.4ã¯ãMySQLã®åããŠã®LTSãªãªãŒã¹ã§ãã
ä»åŸãMySQLã®ãªãªãŒã¹ã¯LTSãšInnovationã®2ã€ã«ããããŸãã詳现ã¯ä»¥äžã®ããã°ãšã³ããªãŒãèªãã®ãããã§ãããã
Introducing MySQL Innovation and Long-Term Support (LTS) versions
Innvocationã¯ææ°ã®è¿œå ãæ¹åãç©æ¥µçã«è¡ããããªãªãŒã¹ã§ãããããªãªãŒã¹å
ã§ãæ°æ©èœã®è¿œå ãåé€ãåäœå€æŽãªã©ãè¡ããããš
ãããŠããŸããäžæ¹ã§ãæŽæ°ã¯æ¬¡ã®InnovationãŸãã¯LTSããªãªãŒã¹ãããæ®µéã§çµäºããŸããçŸåšã®ææ°ã®InnovationãªãªãŒã¹ã¯9.0ã§ãã
LTSã¯ãªãªãŒã¹åŸã¯æ©èœè¿œå ãæŒããããã°ãã£ãã¯ã¹ãã»ãã¥ãªãã£ãããã«ããæŽæ°ãäžå¿ã®ã¢ãã«ã«ãªããŸãããªãªãŒã¹åŸã¯æ©èœè¿œå ã
åé€ãåäœå€æŽã¯è¡ãããŸãããæŽæ°ã«ã€ããŠã¯5幎éïŒå»¶é·ã¯ãã©ã¹3幎ïŒã§ããLTSã¯2幎ããšã®ãªãªãŒã¹ãäºå®ããŠããŠã
次ã®LTSã¯9.7ã«ãªãäºå®ã ããã§ãã
ãã®ãããã®ãªãªãŒã¹ã¢ãã«ã®èãæ¹ã¯ããã®ããã°ãšã³ããªãŒããã£ããèªãã§ãããæ¹ãããããã§ããã
Introducing MySQL Innovation and Long-Term Support (LTS) versions
ããã¥ã¡ã³ãã§ããInnovationãšLTSã«ã€ããŠã¯æžãããŠããŸãã
MySQL :: MySQL 8.4 Reference Manual :: 1.3 MySQL Releases: Innovation and LTS
MySQL 8.4.0ã®ãªãªãŒã¹ããŒãã¯ãã¡ãã
MySQL :: MySQL 8.4 Release Notes :: Changes in MySQL 8.4.0 (2024-04-30, LTS Release)
ãŸããMySQL 8.0ããã®å€æŽç¹ã¯ãã¡ãã®ããŒãžã«ãŸãšããããŠããŸãã
MySQL :: MySQL 8.4 Reference Manual :: 1.4 What Is New in MySQL 8.4 since MySQL 8.0
ç®ç«ã£ãæ©èœè¿œå ãªã©ã¯ãããŸããããèšå®å€ã®æŽçãããã©ã«ãå€ã®å€æŽã¯å€ããããããªã®ã§ãã®ãããã¯æ³šæã§ããã
åèïŒ
漢(オトコ)のコンピュータ道: MySQL 8.4 LTS登場!!
MySQL 8.4 LTS が あらわれた - Speaker Deck
第106回 長期サポート版MySQL 8.4 LTS登場、PostgreSQL 17ベータ版など新リリース目白押し | gihyo.jp
実に6年ぶり!「MySQL」のメジャーバージョン「8.4.0 LTS」が新しいリリーススタイルで登場 | Think IT(シンクイット)
åèã«æããããã°ãšã³ããªãŒãèŠãŠãããšã以äžã®åšèŸºãããã¯ãã¯MySQL 8.0ãŸã§ãæçµãªãªãŒã¹ã®ããã§ãã
MySQL Workbenchã®ä»£æ¿ãšããŠã¯ãMySQL Shell for VS Codeã䜿ãããšã«ãªãããã§ããå人çã«ã¯MySQL Workbenchã¯ãã䜿ã£ãŠ
ãããã§ããã©ãã
ã§ã¯ãMySQL 8.4ãaptãªããžããªãŒããã€ã³ã¹ããŒã«ããŠã¿ãŸãã
MySQL :: Download MySQL APT Repository
MySQL :: A Quick Guide to Using the MySQL APT Repository
ç°å¢
ä»åã®ç°å¢ã¯ãã¡ããUbuntu Linux 22.04 LTSã§ãã
$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.04.4 LTS Release: 22.04 Codename: jammy $ uname -srvmpio Linux 5.15.0-118-generic #128-Ubuntu SMP Fri Jul 5 09:28:59 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
MySQL 8.4ãaptãªããžããªãŒããã€ã³ã¹ããŒã«ãã
ããã§ã¯ãMySQL 8.4ããã¡ãã®æé ã«æ²¿ã£ãŠã€ã³ã¹ããŒã«ããŠãããŸãã
MySQL :: A Quick Guide to Using the MySQL APT Repository
ãªããžããªãŒã®debãã¡ã€ã«ãããŠã³ããŒãã
$ curl -LO https://dev.mysql.com/get/mysql-apt-config_0.8.32-1_all.deb
ã€ã³ã¹ããŒã«ã
$ sudo dpkg -i mysql-apt-config_0.8.32-1_all.deb
ããã©ã«ãã§MySQL 8.4ãã€ã³ã¹ããŒã«ãããããã«èšå®ãããŠããŸãã

倿Žããå Žåã¯ã以äžããéžã¶ããšã«ãªããŸãã
- mysql-8.0
- mysql-innovation
- mysql-8.4-lts
- mysql-cluster-8.0
- mysql-cluster-innovation
- mysql-cluster-8.4-lts

ãªããžããªãŒã®æ å ±ãæŽæ°ã
$ sudo apt update
MySQL Serverãã€ã³ã¹ããŒã«ãåæã«MySQLã¯ã©ã€ã¢ã³ããã€ã³ã¹ããŒã«ãããŸãã
$ sudo apt install mysql-server
ãã®æãrootãŠãŒã¶ãŒã®ãã¹ã¯ãŒããèšå®ããããã«æ±ããããŸãã
ã€ã³ã¹ããŒã«ãå®äºãããšããã®æç¹ã§MySQLãµãŒããŒã¯èµ·åããŠããŸãããŸãèªåèµ·åãæå¹ã«ãªã£ãŠããŸãã
$ sudo systemctl status mysql
â mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2024-08-18 22:54:24 JST; 35s ago
Docs: man:mysqld(8)
http://dev.mysql.com/doc/refman/en/using-systemd.html
Main PID: 2094 (mysqld)
Status: "Server is operational"
Tasks: 35 (limit: 2219)
Memory: 430.3M
CPU: 1.216s
CGroup: /system.slice/mysql.service
ââ2094 /usr/sbin/mysqld
8æ 18 22:54:20 myserver systemd[1]: Starting MySQL Community Server...
8æ 18 22:54:24 myserver systemd[1]: Started MySQL Community Server.
MySQLã¯ã©ã€ã¢ã³ãã®ããŒãžã§ã³ã
$ mysql --version mysql Ver 8.4.2 for Linux on x86_64 (MySQL Community Server - GPL)
æ¥ç¶ããŠããµãŒããŒã®ããŒãžã§ã³ã確èªããŠã¿ãŸãããã
$ mysql -uroot -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 8 Server version: 8.4.2 MySQL Community Server - GPL Copyright (c) 2000, 2024, Oracle and/or its affiliates. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> select version(); +-----------+ | version() | +-----------+ | 8.4.2 | +-----------+ 1 row in set (0.00 sec)
ã¯ã©ã€ã¢ã³ãããµãŒããŒããMySQL 8.4.2ãã€ã³ã¹ããŒã«ãããããã§ãã
ãµãŒããŒã®åæ¢ã
$ sudo systemctl stop mysql
èµ·åã
$ sudo systemctl start mysql
MySQL Shellãã€ã³ã¹ããŒã«ãã
MySQLã¯ã©ã€ã¢ã³ãã¯ãMySQL Shellã«ç§»ããŠãã£ãæ¹ããããããªã®ã§ãã¡ããã€ã³ã¹ããŒã«ããŠãããŸãã
$ sudo apt install mysql-shell
ãã¡ãã¯MySQL Shell 8.4.1ãã€ã³ã¹ããŒã«ãããŸããâŠã
$ mysqlsh --version mysqlsh Ver 8.4.1 for Linux on x86_64 - for MySQL 8.4.1 (MySQL Community Server (GPL))
æ¥ç¶ã¯ãã¡ãã®ã³ãã³ãã§ã
$ mysqlsh root@localhost:3306 --sql
èšå®ãã¡ã€ã«ã確èªãã
èšå®ãã¡ã€ã«ã¯ããã ãããããã§ãã
$ tree /etc/mysql
/etc/mysql
âââ conf.d
â  âââ mysql.cnf
âââ my.cnf -> /etc/alternatives/my.cnf
âââ my.cnf.fallback
âââ mysql.cnf
âââ mysql.conf.d
âââ mysqld.cnf
2 directories, 5 files
確èªããŠã¿ãŸãã
/etc/mysql/my.cnfã
$ grep -v '#' /etc/mysql/my.cnf !includedir /etc/mysql/conf.d/ !includedir /etc/mysql/mysql.conf.d/
/etc/mysql/mysql.cnfã
$ grep -v '#' /etc/mysql/mysql.cnf !includedir /etc/mysql/conf.d/ !includedir /etc/mysql/mysql.conf.d/
ãã®2ãã¡ã€ã«ãäžèº«ããŸã£ããåããªã®ã§ããâŠïŒ
$ diff /etc/mysql/my.cnf /etc/mysql/mysql.cnf $ echo $? 0
ä¿®æ£ããå Žåã¯ã/etc/mysql/conf.dãã£ã¬ã¯ããªã/etc/mysql/mysql.conf.dãã£ã¬ã¯ããªã®äžãæ±ã£ãæ¹ãããããã§ããã
/etc/mysql/conf.d/mysql.cnfã¯ãMySQLã¯ã©ã€ã¢ã³ãçšã®èšå®ãã¡ã€ã«ã®ããã§ãã
$ grep -v '#' /etc/mysql/conf.d/mysql.cnf [mysql]
/etc/mysql/mysql.conf.d/mysqld.cnfã¯ãMySQLãµãŒããŒçšã®èšå®ãã¡ã€ã«ã®ããã§ãã
$ grep -v '#' /etc/mysql/mysql.conf.d/mysqld.cnf [mysqld] pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock datadir = /var/lib/mysql log-error = /var/log/mysql/error.log
ããŒã¿ãã£ã¬ã¯ããªã¯/var/lib/mysqlã§ããã
$ sudo ls -l /var/lib/mysql åèš 103508 -rw-r----- 1 mysql mysql 6291456 8æ 18 22:59 '#ib_16384_0.dblwr' -rw-r----- 1 mysql mysql 14680064 8æ 18 22:53 '#ib_16384_1.dblwr' drwxr-x--- 2 mysql mysql 4096 8æ 18 22:57 '#innodb_redo' drwxr-x--- 2 mysql mysql 4096 8æ 18 22:57 '#innodb_temp' -rw-r----- 1 mysql mysql 56 8æ 18 22:53 auto.cnf -rw-r----- 1 mysql mysql 505 8æ 18 22:54 binlog.000001 -rw-r----- 1 mysql mysql 181 8æ 18 22:56 binlog.000002 -rw-r----- 1 mysql mysql 158 8æ 18 22:57 binlog.000003 -rw-r----- 1 mysql mysql 48 8æ 18 22:57 binlog.index -rw------- 1 mysql mysql 1705 8æ 18 22:54 ca-key.pem -rw-r--r-- 1 mysql mysql 1108 8æ 18 22:54 ca.pem -rw-r--r-- 1 mysql mysql 1108 8æ 18 22:54 client-cert.pem -rw------- 1 mysql mysql 1705 8æ 18 22:54 client-key.pem -rw-r----- 1 mysql mysql 3456 8æ 18 22:56 ib_buffer_pool -rw-r----- 1 mysql mysql 12582912 8æ 18 22:57 ibdata1 -rw-r----- 1 mysql mysql 12582912 8æ 18 22:57 ibtmp1 drwxr-x--- 2 mysql mysql 4096 8æ 18 22:54 mysql -rw-r----- 1 mysql mysql 26214400 8æ 18 22:57 mysql.ibd -rw-r----- 1 mysql mysql 124 8æ 18 22:54 mysql_upgrade_history drwxr-x--- 2 mysql mysql 4096 8æ 18 22:54 performance_schema -rw------- 1 mysql mysql 1705 8æ 18 22:54 private_key.pem -rw-r--r-- 1 mysql mysql 452 8æ 18 22:54 public_key.pem -rw-r--r-- 1 mysql mysql 1108 8æ 18 22:54 server-cert.pem -rw------- 1 mysql mysql 1705 8æ 18 22:54 server-key.pem drwxr-x--- 2 mysql mysql 4096 8æ 18 22:54 sys -rw-r----- 1 mysql mysql 16777216 8æ 18 22:59 undo_001 -rw-r----- 1 mysql mysql 16777216 8æ 18 22:59 undo_002
ãã°ã¯/var/log/mysqlãã£ã¬ã¯ããªã«ããããã§ãã
$ sudo ls -l /var/log/mysql åèš 8 -rw-r----- 1 mysql adm 4452 8æ 18 22:57 error.log
èšå®ãã¡ã€ã«ãå°ã倿ŽããŠãããŸãããã
èšå®ãã¡ã€ã«ã«ã¯ã[mysqld]ã®ãããªã°ã«ãŒããæã¡ãŸãã
[mysql] ... [mysqld] ...
ã°ã«ãŒãã«ã€ããŠã¯ããã¡ãã«å°ã説æããããŸãã
MySQL :: MySQL 8.4 Reference Manual :: 6.2.2.2 Using Option Files
ã°ã«ãŒãåãšããã°ã©ã åãåãã§ããã°ããã®ã°ã«ãŒãå ã®ãªãã·ã§ã³ã¯ãã®ããã°ã©ã ã®ã¿ã«é©çšãããŸãã
If an option group name is the same as a program name, options in the group apply specifically to that program.
ããšãã°[mysql]ã°ã«ãŒãã¯mysqlã³ãã³ãã«å¯Ÿããèšå®ã«ãªããŸãã
å€ãã£ããã®ã¯[client]ã°ã«ãŒãã§ãããã¯ãã¹ãŠã®ã¯ã©ã€ã¢ã³ãããã°ã©ã ã«é©çšãããã°ã«ãŒãã«ãªããŸãã
èšèŒããé åºã¯éèŠã§ãåŸã§æžãããå
容ã§ãªãŒããŒã©ã€ãããããšãã§ããŸããããšãã°[client]ã°ã«ãŒãã§æå®ããå
容ã
[mysqldump]ã°ã«ãŒãã§ãªãŒããŒã©ã€ãããããšãã§ããããšãã£ãæãã§ãã
ãŸã[mysql]ã°ã«ãŒãã«ã¯ããŒãžã§ã³æå®ãããããšãã§ãã[mysqld-8.4]ã®ããã«æžãããšã§MySQLãµãŒããŒ8.4.xã®ã¿ã«æå¹ãªèšå®ã«ã
ã§ããŸãã[mysql-8.3]ã®ããã«ãæžããããã§ããã
ãŸãããããã調ã¹ãŠã¿ãŸããããä»åã¯ãããªæãã«ããŸããã
/etc/mysql/mysql.conf.d/mysqld.cnf
[mysqld] pid_file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock datadir = /var/lib/mysql log_error = /var/log/mysql/error.log #general_log = ON #general-log-file = /dev/stdout #general_log_file = /var/log/mysql/server.log port = 3306 bind_address = 0.0.0.0 skip_name_resolve character_set_server = utf8mb4 collation_server = utf8mb4_0900_bin transaction_isolation = READ-COMMITTED ## gtid gtid_mode = on enforce_gtid_consistency = on ## binary log log_bin = mysql-bin sync_binlog = 1 binlog_expire_logs_seconds = 864000
èšå®ããã®ã¯ãµãŒããŒåŽã®ã¿ã§ããã¯ã©ã€ã¢ã³ãåŽã¯ããã©ã«ãã®ãŸãŸã«ããŸããã
ãã®ä»ã®èšå®é
ç®ã¯ãããã¥ã¡ã³ãã®ä»¥äžã®ããŒãžãèŠãŠãããšããã§ãããããã¹ãŠã®èšå®é
ç®ãã²ãšã€ã®ããŒãžã«ãŸãšãŸã£ãŠããããã§ã¯
ãªãã®ã§ãããããèŠãŠåã£ãŠãŸãšããŠãããŸããã
MySQL :: MySQL 8.4 Reference Manual :: 7.1.8 Server System Variables
MySQL :: MySQL 8.4 Reference Manual :: 17.14 InnoDB Startup Options and System Variables
MySQL :: MySQL 8.4 Reference Manual :: 19.1.6 Replication and Binary Logging Options and Variables
MySQL :: MySQL 8.4 Reference Manual :: 19.1.6.4 Binary Logging Options and Variables
MySQL :: MySQL 8.4 Reference Manual :: 19.1.6.5 Global Transaction ID System Variables
MySQL :: MySQL 8.4 Reference Manual :: 19.1.6.2 Replication Source Options and Variables
MySQL :: MySQL 8.4 Reference Manual :: 19.1.6.3 Replica Server Options and Variables
ãªãã±
Dockerã€ã¡ãŒãžäœæã®æãªã©ã§ãã©ã®ãªãªãŒã¹ïŒ8.0ãªã®ã8.4 LTSãªã®ããªã©ïŒãéžæããã®ã察話圢åŒã§ã¯ãªãCLIã§èšå®ããæ¹æ³ã¯
ä»¥åæžããŠãããŸããã
MySQLをaptリポジトリーからインストールする時に、MySQL 8.0が選択されるように設定する - CLOVER🍀
å®ã¯ãã®äžã«ãMySQL 8.4ãéžã¶ã³ãã³ããæžããŠããã®ã§ããã
ãããã«
Ubuntu Linux 22.04 LTSã«MySQL 8.4ãã€ã³ã¹ããŒã«ããŠã¿ãŸããã
ã€ã³ã¹ããŒã«æ¹æ³èªäœã¯å°ããªãã®ã§ããããªãªãŒã¹äºæ ãä»ã®èšå®ãªã©ãèŠçŽãæ©äŒã«ãªã£ãŠããã£ãããªãšæããŸãã