14:34プログラミングを始め、システム開発を行うときに必ずと言っていいほどセットで登場するのがデータベース(DB)です。データベースとはデータを保存するためのソフトウェアであり、リレーショナルデータベース(RDB)が主流です。データベースの作成やそれらにアクセス可能なユーザなどを管理するソフトウェアがMariaDBやMySQL、PostgreSQL、Oracle、SQLServerといったものです。RDBにおいて覚える必要があるのはSQLというデータベースを操作するための言語です。いったことをSQLを使って行います。今回はSQLの基礎知識ではなく、CentOS7環境に最新のMariaDBをインストールする方法、MariaDBではなくMySQLをインストールする方法をご紹介いたします。MySQLおよびMariaDBにおけるユーザの作成、データベースの作成、ユーザへの権限付与の方法については別途記載を予定しています。(自分自身がよく忘れてしまうので。SQL自体は基本的にMySQLであってもPostgreSQLであってもOracleであっても文法には大きな違いはありません。項目のデータ型や用意されている関数などちょっとした違いはあります。SQLの書き方についてはSQLServerが一番癖が強いと個人的には感じております。MariaDBの最新版をCentOSにインストールするCentOS7のyumで標準インストールされるのはMariaDBですが、バージョンが古いです。公式サイトで最新版をインストールするための以下コマンドが公開されています。bashバージョンを指定してインストールしたい方は以下の通りです。--mariadb-server-version="mariadb-10.3"サポートされているバージョンは以下の通りです。上記コマンドやサポートバージョンは変わる可能性がありますので、インストール前に必ず公式サイトで情報をご確認ください。mariadb-5.5mariadb-10.0mariadb-10.1mariadb-10.2mariadb-10.3mariadb-10.4上記のコマンドで最新のMariaDBがyumに追加され、以下のコマンドでパッケージをインストールすることができます。MariaDB-clientCentOS7にMariaDBではなくMySQLをインストールする(yum収録のパッケージをMySQLに変更する)MySQLから派生したMariaDBよりもMySQLを使いたいという方は以下の手順でyumのMariaDBパッケージを削除し、MySQLに変更することが可能です。CentOS7ではMariaDBがyumの標準になっておりますが、例えば、レンタルサーバで利用しているDBがMySQLなのでMariaDBではなくMySQLをインストールしたいなど、環境をそろえる際に必要になるときがあります。MySQLの公式でyumへの追加方法が公開されています。(公式サイトへ)MariaDBがインストールされた状態ですと、MySQLと競合して上手くインストールすることはできません。そのため、MySQLをインストールする場合はMariaDBの削除が必要です。両方の環境を保持したい場合は仮想マシンで環境構築することをお勧め致します。Dockerでコンテナ環境を作成したり、仮想マシン自体の複製(Vagrantを利用すると楽)を行って複数種類の仮想マシン環境を用意することができます。本題に戻り、まずはMariaDBの削除を行います。/var/lib/mysql続いてMySQLのyumリポジトリ向けRPMパッケージをダウンロードします。CentOSのLinuxカーネルのバージョンを確認して、公式のダウンロードページのリンクを確認します。https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm上記コマンドでリポジトリにMySQLが追加され、以下のコマンドでインストールします。mysql-community-server以上です。ちなみにサービスの起動と次回CentOSの起動時に自動的にサービスを立ち上げる場合は以下のコマンドで設定することができます。enableで次回OS起動時に自動的にサービスを起動します。startは今すぐにサービスを起動します。件名コメントテキストフォーマットについてCAPTCHAこの質問はあなたが人間の訪問者であるかどうかをテストし、自動化されたスパム送信を防ぐためのものです。オプティマル・システムデザイン・ワークスの主な活動内容は、お客様先のシステム設計・開発のサポートになります。現在は私自身がフリーのエンジニアとしてお客様先に常駐し、システム開発のお手伝いをしております。東京・横浜付近のお客様を中心に活動しております。Webアプリケーションのフルスタックエンジニアとして2020年で16年目を迎えましたが、そのうちの半分はcgiosとPerlの経験になります。他言語での開発を行う際も基本軸はPerlで学んだ考え方や開発手法がベースになっています。