64 ビット CentOs7 ソース コードのインストール mysql-5.6.35 プロセス共有

64 ビット CentOs7 ソース コードのインストール mysql-5.6.35 プロセス共有

インストールプロセス中に問題が発生しないように、まず依存パッケージをインストールします。

[root@bogon liuzhen]# yum -y install gcc gcc-c++
[root@bogon liuzhen]# yum -y インストール cmake
[root@bogon liuzhen]# yum -y インストール ncurses-devel
[root@bogon liuzhen]# yum -y autoconf をインストールします
[root@bogon liuzhen]# yum -y インストール perl perl-devel
上記の依存パッケージのインストールは1行で実行することもできます。

[root@bogon liuzhen]# yum -y インストール gcc gcc-c++ cmake ncurses-devel autoconf perl perl-devel

MySQL ソースコードのダウンロードアドレス: https://dev.mysql.com/downloads/mysql/5.6.html#downloads

ソースパッケージのアドレス: https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.35.tar.gz

MySQLのインストールディレクトリとデータ保存ディレクトリを作成する

[root@bogon liuzhen]# mkdir /usr/local/mysql
[root@bogon liuzhen]# mkdir /usr/local/mysql/data

mkdir フォルダを作成

-m: 新しく作成されたディレクトリのアクセス権限を設定する

-p: パス内の一部のディレクトリがまだ存在しない場合は、システムが自動的にそれらのディレクトリを作成します。

ユーザーとユーザーグループを作成する

[root@bogon liuzhen]# グループ追加 mysql
[root@bogon liuzhen]# useradd -r -g mysql mysql

useradd コマンドは、ユーザー アカウントとユーザーのホーム ディレクトリを作成するために使用されます。このコマンドには、最終ユーザーが使用できる権限があります。新しいユーザーのパスワードが空です

-g: ユーザーが属する開始グループを指定します。

-d: ユーザーがログインするときの開始ディレクトリを指定します。

-s: ログイン後にユーザーが使用するシェルを指定します。 -s /sbin/nologinはログインシェルを禁止します

-gの後の最初のmysqlはグループ名で、2番目のmysqlは新しく作成されたユーザー名です。新しく作成されたユーザー情報は/etc/passwdファイルにあります。

現在のフォルダにファイルを解凍します

tar バックアップ、圧縮と解凍、Linux コマンド、ツール

-z: は、tarball が gzip で圧縮されていることを示します。そのため、解凍するには gunzip を使用する必要があります。

-x : tarballからファイルを抽出する

-v : 詳細情報を表示

-f xxx.tar.gz: 処理するファイルがxxx.tar.gzであることを指定します

tar.gz を tar zxvf で解凍し、tar.bz2 を tar jxvf で解凍します。

インストールを開始

[コード]
[root@bogon liuzhen]# tar -zxvf mysql-5.6.35.tar.gz
[root@bogon liuzhen]# cd mysql-5.6.35
[root@bogon mysql-5.6.35]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DINSTALL_DATADIR=/usr/local/mysql/data \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=すべて\
-DENABLED_LOCAL_INFILE=1
[root@bogon mysql-5.6.35]# make && make install

CMAKE パラメータの説明:

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //デフォルトのインストールディレクトリ

-DINSTALL_DATADIR=/usr/local/mysql/data //データベース保存ディレクトリ

-DDEFAULT_CHARSET=utf8 //utf8文字を使用する

-DDEFAULT_COLLATION=utf8_general_ci //文字をチェック

-DEXTRA_CHARSETS=all //すべての拡張文字セットをインストールします

-DENABLED_LOCAL_INFILE=1 //ローカルからデータをインポートできるようにする

-DMYSQL_USER=mysql

-DMYSQL_TCP_PORT=3306

CMAKEの詳細な設定については、MySQL公式サイトを参照してください。

注記:

インストールが失敗し、再コンパイルする場合は、古いオブジェクト ファイルとキャッシュ情報をクリアする必要があります。

[root@bogon mysql-5.6.35]# クリーンにする
[root@bogon mysql-5.6.35]# rm -f CMakeCache.txt
[root@bogon mysql-5.6.35]# rm -rf /etc/my.cnf

ディレクトリ権限の設定

[root@bogon liuzhen]# cd /usr/local/mysql
[root@bogon mysql]# chown -R mysql:mysql .
[root@bogon mysql]# chown -R mysql:mysqlデータ

chown コマンドは、ファイルまたはディレクトリの所有者とグループを変更します。

-R: 指定されたディレクトリとそのすべてのサブディレクトリおよびファイルの所有者を再帰的に変更します。

-v : chown コマンドによって行われた作業を表示します。

システムサービスにmysqlスタートアップサービスを追加する

[root@bogon liuzhen]# cd /usr/local/mysql
[root@bogon mysql]# cp サポートファイル/my-default.cnf /etc/my.cnf

基本テーブルを作成します。

[root@bogon liuzhen]# cd /usr/local/mysql
[root@bogon mysql]# ./scripts/mysql_install_db --user=mysql

環境変数の設定

[root@bogon liuzhen]# vi /etc/profile

下部に次の2つの値を追加します

MYSQL_HOME="/usr/local/mysql" をエクスポートします。

PATH="$PATH:$MYSQL_HOME/bin" をエクスポートします。

保存する

変更したプロファイルファイルをすぐに有効にする

[root@bogon liuzhen]# ソース /etc/profile

起動を制御できるサービスのフォルダに mysql を追加し、サービスによって制御できるサービス名である mysql という名前を付けます。これで、service mysql start を使用して mysql の起動を制御できるようになります。

/etc/init.d は /etc/rc.d/init.d へのリンクです。/etc/init.d にファイルを追加すると、同じファイルが /etc/rc.d/init.d にも追加されます。

[root@bogon liuzhen]# cd /usr/local/mysql/
[root@bogon mysql]# cp support-files/mysql.server /etc/init.d/mysql

chkconfig コマンドは主に、システム サービスの実行レベル情報を更新 (開始または停止) および照会するために使用されます。 chkconfig は、サービスを直ちに自動的に無効化または有効化するのではなく、単にシンボリック リンクを変更するだけであることに注意してください。

--add: 指定されたシステム サービスを追加して、chkconfig コマンドで管理できるようにし、同時に関連データをシステム起動説明ファイルに追加します。サービススクリプトは/etc/ini.d/ディレクトリに保存する必要があります。

ブートコマンドによって管理されるサービスリストにmysqlサービスを追加します。

[root@bogon liuzhen]# chkconfig --add mysql
起動時にmysqlサービスを自動的に開始する

on: サービスにはレベル制限があります。詳細については chkconfig を確認してください。

[root@bogon liuzhen]# chkconfig mysql オン

次のコマンドを使用してmysqlを起動できます。

[root@bogon liuzhen]# サービス mysql を開始
mysqlサービスを停止する

[root@bogon liuzhen]# サービスmysqlを停止
MySQLサービスを再起動する

[root@bogon liuzhen]# サービスmysqlを再起動します

次の 2 つのコマンドは同じ効果があります。

systemctl [stop|start|restart] サービス名

サービス サービス名 [停止|開始|再起動]

次のプロンプトで Enter キーを押して新しいパスワードを設定します。

[root@bogon liuzhen]# mysqladmin -u root パスワード
新しいパスワード:
新しいパスワードを確認:
[root@bogon liuzhen]#

MySQLに接続する

[root@bogon mysql]# mysql -u root -p
パスワードを入力してください:
MySQL モニターへようこそ。コマンドは ; または \g で終わります。
MySQL接続IDは2です
サーバーバージョン: 5.6.35 ソース配布

Copyright (c) 2000, 2016, Oracle およびその関連会社。無断複写・転載を禁じます。

OracleはOracle Corporationおよびその関連会社の登録商標です。
その他の名称は各社の商標である場合があります。
所有者。

ヘルプを表示するには、「help;」または「\h」と入力します。現在の入力ステートメントをクリアするには、「\c」と入力します。

マイSQL>

ルート用のリモート接続機能を追加

mysql>mysql を使用します。
mysql>desc ユーザー;
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root"; // リモート接続機能を root に追加します。
mysql>ユーザーを更新し、Password = password('xxxxxx') を設定します。User='root';
mysql>User='root' の場合、ホスト、ユーザー、パスワードをユーザーから選択します。
mysql>flush privileges; //権限を更新
mysql>exit //終了

次の4つのGRANTの例

192.168.155.1 のユーザー user1 に、データベース dbname のテーブル tablename に対する SELECT、INSERT、UPDATE、DELETE、CREATE、および DROP の権限を割り当て、パスワードを 123456 に設定します。

ALTER など、テーブル操作には他にも多くの権限があります。

mysql> 'user1'@'192.168.155.1' IDENTIFIED BY '123456' に SELECT、INSERT、UPDATE、DELETE、CREATE、DROP ON dbname.tablename の権限を許可します。
データベース dbname 内のすべてのテーブルに対するすべての操作の権限を 192.168.155.1 のユーザー user2 に割り当て、パスワードを 123456 に設定します。

mysql> 'user2'@'192.168.155.1' ('123456' によって識別) に dbname.* のすべての権限を付与します。
192.168.155.1 のユーザー user3 に、すべてのデータベース内のすべてのテーブルに対するすべての操作の権限を割り当て、パスワードを 123456 に設定します。

mysql> '123456' によって識別される 'user3'@'192.168.155.1' に *.* のすべての権限を付与します。
ローカル ユーザー user4 に、すべてのデータベース内のすべてのテーブルに対してすべての操作を実行する権限を割り当て、パスワードを 123456 に設定します。

mysql> '123456' によって識別される 'user4'@'localhost' に *.* のすべての権限を付与します。

ファイアウォールのmysql3306ポートへの外部アクセスを有効にする

CentOS を 7 にアップグレードした後、元の iptables の代わりに firewalld が使用されるようになりました。以下は、firewalldを使用してLinuxポートを開く方法の記録です。

--zone : スコープ、ネットワーク ゾーンはネットワーク接続の信頼レベルを定義します。これは 1 対多の関係です。つまり、接続は 1 つの領域のみの一部となり、領域は複数の接続に使用できます。

--add-port : ポートと通信プロトコルを追加します。形式は、ポート/通信プロトコル、プロトコルは tcp または udp です。

--permanent : 永続的な効果。このパラメータがないと、システムの再起動後にポート アクセスが失敗します。

[root@bogon /]# ファイアウォール-cmd --zone=public --add-port=3306/tcp --permanent
ファイアウォールを再起動する

[root@bogon /]# ファイアウォール-cmd --reload
-----------------------------------------------------------------------

ルートパスワードを忘れた場合の変更方法

mysqlサービスを停止するか、コマンドsystemctl stop mysqlを実行します。

[root@bogon /]# サービスmysql停止
/usr/local/mysql と入力する

[root@bogon /]# cd /usr/local/mysql/
mysqld_safe 経由で mysql を起動し、mysql の起動時に grant-tables 認可テーブルを起動しないでください。

[root@bogon mysql]# ./bin/mysqld_safe --basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data \
--skip-grant-tables &
mysqlにログイン

[root@bogon /]# mysql -u ルート mysql
ルートパスワードを変更する

mysql>UPDATE user SET password=PASSWORD("new_password") WHERE user='root';
権限の更新

mysql> 権限をフラッシュします。
MySQLを終了する

mysql>終了;

以下もご興味があるかもしれません:
  • Centos7でmysqlを使用してMariaDBを再起動する
  • Centos7.3 で mysql5.7.18 をインストールして初期パスワードを変更する方法
  • Linux centos7 環境での MySQL インストール チュートリアル
  • CentOS7 で MySQL データベースにリモート接続できない理由と解決策
  • Centos7で指定したmysqlユーザーのパスワードを変更する方法の詳細な説明
  • CentOs7.x に MySQL をインストールするための詳細なチュートリアル
  • MySQL 5.7.17 のインストールと設定方法のグラフィックチュートリアル (CentOS7)
  • Alibaba Cloud CentOS7 で Apache+PHP+MySQL 環境を構築
  • Centos7 で yum を使用して Mysql5.7.19 をインストールする詳細な手順
  • Centos7.4 システムに yum ソースから mysql 5.6 をインストールする

<<:  ネイティブ js でカスタム難易度のマインスイーパ ゲームを実装する

>>:  Dockerコンテナでアプリケーションサービスを自動的に起動する方法の例

推薦する

Vue.jsはアイコンをクリックしてズームインし、

前回の記事では、Vue で画像の切り抜きや拡大・縮小、回転を実現する方法を紹介しました。今回は、アイ...

VS2019をMySQLデータベースに接続するプロセスと一般的な問題の概要

今日の午後からVS2019をMySQLで使えるのではないかと思い、いろいろ環境構築を始めました。プロ...

マークアップ言語 - アンカー

前: マークアップ言語 - フレーズ要素 オリジナルソース 第 7 章 アンカーHTML のリンクの...

Linux環境でタイムゾーンを設定できない問題を解決

Linuxでタイムゾーンを変更する場合、常に変更することはできませんAsia/Shanghai に変...

reactにおけるstateの略語の詳細な説明

序文国家とは何か私たちは皆、React はステート マシンであると言います。それはどのように反映され...

altとtitleの違いの詳しい説明

これら 2 つの属性はよく使用されますが、その違いはまとめられていません。それでは、その使い方をまと...

Vue での keepAlive の使用例の詳細な説明

開発においては、一覧から詳細ページにジャンプし、また詳細ページに戻る際に一覧ページの状態(スクロール...

自動開始および停止コマンドを適用するには、Docker サービスを再起動します (推奨)

Docker サービス アプリケーションを再起動するコマンドを見てみましょう。具体的な内容は次のと...

マークアップ言語 - 画像の置き換え

123WORDPRESS.COM HTML チュートリアル セクションに戻るには、ここをクリックして...

vite2.x は ant-design-vue@next コンポーネントのオンデマンド読み込みを実装します。

1. 使用バージョンバイト:2.0 ant-design-vue: 2.0.0-rc.8ヴュー:3...

WeChatアプレットコンポーネント開発:視覚的な映画座席選択機能

目次1. はじめに1. コンポーネントデータ2. コンポーネントページのレイアウト1. ロゴエリアの...

nginxを使用して取得したIPアドレスが127.0.0.1である問題を解決する

IPツールを取得 lombok.extern.slf4j.Slf4j をインポートします。 org....

jquery-multiselect を使用した IE6 のバグの解決方法

jquery-multiselect (ドロップダウン ボックスをチェックボックス付きの複数選択コン...

MySQL 自動インクリメント ID 枯渇の例

ディスプレイ定義IDテーブルに定義された自動増分IDが上限に達した場合、次のIDを申請する際に得られ...

テーブルタグ(テーブル)詳細

<br />テーブルは、昔から誰もが使ってきたタグで、今も使われています。しかし、現在の...