CentOS6.9+Mysql5.7.18 ソースコードのインストール詳細チュートリアル

CentOS6.9+Mysql5.7.18 ソースコードのインストール詳細チュートリアル

CentOS6.9+Mysql5.7.18 ソースコードのインストールでは、以下の操作を root ユーザーで実行します。

1. 依存ツールをインストールする

cmake make3.75+ gcc4.4.6+ Boost1.59.0 バイソン ncurses
yum をインストール -y cmake、make、gcc、gcc-c++、bison、ncurses、ncurses-devel
cd /opt

https://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz をダウンロードしてください

またはBaiduに問い合わせてください

tar -zxvf boost_1_59_0.tar.gz -C /usr/local/

2. MySQLをダウンロードしてインストールの準備をする

git クローン https://github.com/mysql/mysql-server.git

gitがない場合は、yum install gitでインストールします。

5.7を選択

ユーザーグループrootでmysqlユーザーを作成する

ユーザー追加 -r -g ルート -s /bin/false mysql

3. cmakeを実行する

cd /opt/mysql-server5.7
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=/usr/local/boost_1_59_0 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DSYSCONFDIR=/etc \
-DEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DENABLED_LOCAL_INFILE=1 \
-DEXTRA_CHARSETS=すべて
-DCMAKE_INSTALL_PREFIX: インストール パス -DMYSQL_DATADIR: データ ストレージ ディレクトリ -DWITH_BOOST: boost ソース コード パス -DSYSCONFDIR: my.cnf 構成ファイル ディレクトリ -DEFAULT_CHARSET: データベースのデフォルトの文字エンコード -DDEFAULT_COLLATION: デフォルトのソート規則 -DENABLED_LOCAL_INFILE: このファイルからのデータのインポートを許可する -DEXTRA_CHARSETS: すべての文字セットをインストールする 4. コンパイルしてインストールします。make -j `grep processer /proc/cpuinfo | wc -l`
インストールする
-j パラメータは、CPU コアの数に基づいてコンパイル中のスレッド数を指定し、コンパイルを高速化できます。
途中でコンパイルに失敗した場合は、cmake によって生成されたコンパイル前設定パラメータのキャッシュ ファイルと make コンパイル後に生成されたファイルを削除して、再コンパイルする必要があります。
cd /opt/mysql-server5.7
rm -f CMakeCache.txt
きれいにする

5. システムデータベースを初期化する

vim /etc/my.cnf

挿入モードに入り、元のコンテンツを次の内容に置き換えます。

[クライアント]
ポート=3306
ソケット=/temp/mysql.sock
[mysqld]
文字セットサーバー=utf8
照合サーバー=utf8_general_ci
外部ロックをスキップ
名前解決をスキップ
ユーザー=mysql
ポート=3306
ベースディレクトリ=/usr/local/mysql
データディレクトリ=/usr/local/mysql/data
tmpdir=/usr/local/mysql/temp
# server_id = .....
ソケット=/usr/local/mysql/mysql.sock
ログエラー=/usr/local/mysql/logs/mysql_error.log
pidファイル=/usr/local/mysql/mysql.pid
オープンファイル制限=10240
バックログ=600
最大接続数=500
最大接続エラー数=6000
待機タイムアウト=605800
#オープンテーブル=600
#テーブルキャッシュ = 650
#開かれたテーブル = 630
最大許容パケット数=32M
ソートバッファサイズ=4M
結合バッファサイズ=4M
スレッドキャッシュサイズ=300
クエリキャッシュタイプ=1
クエリキャッシュサイズ=256M
クエリキャッシュ制限=2M
クエリキャッシュ最小解像度単位=16k
tmp_table_size=256M
最大ヒープテーブルサイズ=256M
キーバッファサイズ=256M
読み取りバッファサイズ=1M
読み取りバッファサイズ=16M
バルク挿入バッファサイズ=64M
小文字テーブル名=1
デフォルトのストレージエンジン=INNODB
innodb_buffer_pool_size=2G
innodb_log_buffer_size=32M
innodb_log_file_size=128M
innodb_flush_method=O_DIRECT
#####################
スレッド同時実行数=32
長いクエリ時間=2
スロークエリログ=オン
スロークエリログファイル=/usr/local/mysql/logs/mysql-slow.log
[mysqlダンプ]
素早い
最大許容パケット数=32M
[mysqld_safe]
ログエラー=/var/log/mysqld.log
pidファイル=/var/run/mysqld/mysqld.pid
cd /usr/local/mysql
mkdirデータ
mkdir ログ
mkdir temp
chmod 0770 -R 。
./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql --socket=/tmp/mysql.sock

MySQLバージョン5.7.6より前では、bin/mysql_install_db --userでした。

実行が完了したら、logs/mysql_error.log ファイルを確認し、そこに一時的な root パスワードを書き留めます。

root@localhost: xxxxxxxxxx の一時パスワードが生成されます

6. MySQLを設定する

chkconfig --add mysqld # システムに追加 service chkconfig mysqld on # 起動時に開始 service mysqld start 起動に失敗しました。セーフモードで開始します chown -R mysql:root /var/run/mysqld
./bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql &
./mysql -uroot -p

mysql_error.logに一時パスワードを入力して、mysqlコンソールにログインします。

パスワードを 'asdfghjkl' に設定します。
クエリは正常、影響を受けた行は 0 行 (0.00 秒)
警告を表示します。

MySQLを停止する

mysqladmin -u ルート -p シャットダウン

先ほど設定したパスワードを入力して正常に停止します

次に、システム サービスを使用して mysql を起動します。

service mysqld start # mysqlサービスを起動する

上記は編集者が紹介した CentOS6.9+Mysql5.7.18 ソースコードのインストールです。皆様のお役に立てれば幸いです。ご質問がございましたら、メッセージを残していただければ、編集者がすぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

以下もご興味があるかもしれません:
  • Centos6.9 インストール Mysql5.7.18 ステップ記録
  • CentOS6.8 は cmake を使用して MySQL5.7.18 をインストールします。
  • CentOS 6.5 で MySQL 5.7.18 をインストールするための詳細なチュートリアル
  • CentOS 6.5 に MySQL 5.7.17 バイナリ インストールとマルチインスタンス構成を展開する
  • Centos6.5 コンパイルとインストール mysql 5.7.14 の詳細なチュートリアル
  • Centos6にMysql5.7をインストールする方法

<<:  Vue の長いリストをすばやく読み込む方法

>>:  Centos7 に Nginx 統合 Lua サンプル コードをインストール

推薦する

SqlクエリMySqlデータベーステーブル名と説明テーブルフィールド(列)情報

以下では、SQL クエリ ステートメントを使用して、Mysql データベース内のテーブルのテーブル名...

Nginx を使用してグレースケール リリースを実装する

グレースケールリリースとは、白と黒をスムーズに移行できるリリース方法を指します。 ABテストとは、グ...

Vue ElementUI フォームのフォーム検証

フォーム検証は、フロントエンド開発プロセスで最もよく使用される機能の 1 つです。私の個人的な仕事経...

MLSQL スタックでストリームのデバッグを簡単にする方法

序文クラスメートが MLSQL Stack のストリーミング サポートを調査しています。そこで、フロ...

MySQLアカウントのパスワード変更方法(概要)

序文:データベースを日常的に使用すると、パスワードが単純すぎて変更する必要がある場合、パスワードの有...

CentOS8でのnmcliの使い方の詳しい説明

RHEL8/CentOS8 に基づく一般的な nmcli コマンド # IP を表示する (ifco...

JSはビデオの再生速度を制御するための簡単なサンプルコードを実装します

導入以前、ある問題に気づきました。学習ビデオを視聴しているとき、動きが遅すぎる、先生が黒板に書くのに...

React コードを共有するためのベストプラクティス

プロジェクトがある程度複雑になると、必然的にロジックの再利用の問題に直面することになります。 Rea...

JavaScript で支払いの 10 秒カウントダウンを実現

この記事では、支払いの10秒カウントダウンを実現するためのJavaScriptの具体的なコードを参考...

HTML テーブル マークアップ チュートリアル (22): 行の境界線の色属性 BORDERCOLORLIGHT

行内では、明るい境界線の色を個別に定義できます。基本的な構文<TR ボーダーカラーライト=co...

CentOS 7 で MySQL 8 の複数のインスタンスを設定する詳細なチュートリアル (必要な数だけ設定できます)

原因最近、プロジェクトのリファクタリングを始めたのですが、マスタースレーブと読み取り書き込み分離を使...

LinuxでSVNサーバーを構築する方法

1: SVNをインストールする yum インストール -y サブバージョン2. 倉庫を作る1: 倉庫...

CSS に基づいて MaterialUI ボタン​​クリックアニメーションを実装し、それを React コンポーネントにカプセル化します。

序文フロントエンドフレームワークのヘビーユーザーとして、私はテクノロジーを選択する際にそのエコロジー...

フォームデータを取得するための Node.js メソッドの 3 つの例

序文Nodejs はサーバーサイド言語です。開発中、登録やログインなどでは、判断のためにフォームを通...

nginxリバースプロキシwebSocket設定の詳細な説明

最近、プロジェクトで作業しているときに webSocket プロトコルを使用し、WeChat アプレ...