MySQLのインストール(バイナリパッケージ)

免責事項:この記事はブロガーオリジナル記事です、続くBY-SAのCC 4.0を著作権契約、複製、元のソースのリンクと、この文を添付してください。
このリンク: https://blog.csdn.net/weixin_44297303/article/details/92772315

まず、MySQLのバイナリパッケージをダウンロードしてください

いくつかは求めることができる:なぜバイナリパッケージを?
主に、すべての機能がよく構成されたバイナリパッケージがしているので!

生産やテスト環境は、一般的にGAバージョンを選択します(一般的に入手可能なバージョン、修復バグがテストした後)

コマンドをダウンロードします。

# wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

Quguanをダウンロードするか、自分自身のウェブサイト

URL https://dev.mysql.com/downloads/

図は次のとおりです。
ここに画像を挿入説明

MD5チェックサムはダウンロードが完了した後、ダウンロードプロセス中に何の問題もなく、必ずパッケージを作る行って、正常に使用することができます。

# md5sum mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz 

ここに画像を挿入説明

インストールの前に第二に、環境検知システム

インストールされたMySQLデータベースで成功する、後半データベースの最適化作業を行う、非常に必要なの早期発見におけるLinuxベースのシステムにするために!

1、SELinuxのファイアウォールシステムをオフにします

SELinuxは設定後、システムを再起動し、無効に設定しました

# vim /etc/selinux/config
  7 SELINUX=disabled

閉じるfirewalldファイアウォール

# systemctl stop firewalld
# systemctl disable firewalld
# systemctl mask firewalld.service

iptablesのインストール

# yum install iptables-services.x86_64 -y
# systemctl status iptables

ここに画像を挿入説明

2、スワップパーティションの設定

swappinessのサイズは、スワップパーティションの値に大きな影響を与えます

  • あなたは、メモリ、OOMエラーからシステムを引き起こす可能性がスワップパーティションを、使用前に0は事故がMySQLを殺す引き起こし、最大物理メモリを表し、
  • 100は、移動スワップ・パーティション上記メモリにスワップパーティションを積極的に利用し、タイムリーなデータです。
  • 推奨しないアロケーション・スワップまたは割り当てられた領域の4ギガバイト

ビューswappinessをファイル

# cat /proc/sys/vm/swappiness 
30

# sysctl -a | grep swap
vm.swappiness = 30

オプション3、ファイルシステム

これは、ext4は、管理しやすく、動的な拡張のサポートに比べ、XFSをお勧めします。

4、オペレーティングシステムの制限

お使いのオペレーティングシステム上で電流制限を見ます

# ulimit -a

注意
開いているファイル(-n)1024の
最大ユーザ・プロセス(-u)7179

ここに画像を挿入説明
与えられている理由の制限を避けるために、システムのソフトウェアとハ​​ードウェアの制限を変更します!

# vim /etc/security/limits.conf
*       soft    nproc   65535
*       hard    nproc   65535
*       soft    nofile   65535
*       hard    nofile   65535
  • 変更後は、必要性を有効にするには、オペレーティングシステムを再起動します
    ここに画像を挿入説明

5、NUMAを閉じました

閉じる沼機能、あなたがより良いメモリを割り当てることができ、スワップメモリ​​の使用を取得する方法は、(スワップは、データベースのパフォーマンスの低下につながりません)

三、MySQL5.7のインストール

1、MySQLユーザーの確立

# groupadd mysql
# useradd -g mysql mysql -s /sbin/nologin

2、解凍、ソフトリンク

ベースとしては/ usr / local /ディレクトリ

# cd /usr/local/

減圧

# tar zxf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz 

将来のアップグレードが容易なソフトリンク、して
mysqlのディレクトリのパーミッションへ

# ln -s mysql-5.7.26-linux-glibc2.12-x86_64 mysql
# chown mysql:mysql -R mysql

3、データディレクトリを確立

  • 一般的な許可が指定されたディレクトリことを立証するために必要です
# mkdir -p  /data/mysql/
# chown -R mysql:mysql /data/mysql/

4、設定ファイルを編集

  • それはバイナリファイルであるため、データベース構成ファイルは、ここでは自分の利益を設定する必要があります
# vim /etc/my.cnf
#my.cnf
[client]
port            = 3306
socket          = /tmp/mysql.sock

[mysql]
prompt="\\u@\\h [\\d]>" 
#pager="less -i -n -S"
#tee=/opt/mysql/query.log
no-auto-rehash

[mysqld_multi]
mysqld = /usr/local/mysql/bin/mysqld_safe
mysqladmin = /usr/local/mysql/bin/mysqladmin
log = /data/mysql/mysqld_multi.log

[mysqld]
#misc
user = mysql
basedir = /usr/local/mysql
datadir = /data/mysql/
port = 3306
socket = /tmp/mysql.sock
event_scheduler = 0

tmpdir = /data/mysql/
#timeout
interactive_timeout = 300
wait_timeout = 300

#character set
character-set-server = utf8

open_files_limit = 65535
max_connections = 100
max_connect_errors = 100000
#lower_case_table_names =1
#logs
log-output=file
slow_query_log = 1
slow_query_log_file = /data/mysql/slow.log
log-error = /data/mysql/error.log
log_warnings = 2
pid-file = mysql.pid
long_query_time = 1
#log-slow-admin-statements = 1
#log-queries-not-using-indexes = 1
log-slow-slave-statements = 1

#binlog
#binlog_format = STATEMENT
binlog_format = row
server-id = 1003306
log-bin = /data/mysql/mysql-bin
binlog_cache_size = 4M
max_binlog_size = 256M
max_binlog_cache_size = 1M
sync_binlog = 0
expire_logs_days = 10
#procedure 
log_bin_trust_function_creators=1

#
gtid-mode = 0

#relay log
skip_slave_start = 1
max_relay_log_size = 128M
relay_log_purge = 1
relay_log_recovery = 1
relay-log=relay-bin
relay-log-index=relay-bin.index
log_slave_updates
#slave-skip-errors=1032,1053,1062
#skip-grant-tables

#buffers & cache
table_open_cache = 2048
table_definition_cache = 2048
table_open_cache = 2048
max_heap_table_size = 96M
sort_buffer_size = 128K
join_buffer_size = 128K
thread_cache_size = 200
query_cache_size = 0
query_cache_type = 0
query_cache_limit = 256K
query_cache_min_res_unit = 512
thread_stack = 192K
tmp_table_size = 96M
key_buffer_size = 8M
read_buffer_size = 2M
read_rnd_buffer_size = 16M
bulk_insert_buffer_size = 32M

#myisam
myisam_sort_buffer_size = 128M
myisam_max_sort_file_size = 10G
myisam_repair_threads = 1

#innodb
innodb_buffer_pool_size = 1024M
innodb_buffer_pool_instances = 1
innodb_data_file_path = ibdata1:100M:autoextend
innodb_flush_log_at_trx_commit = 2
innodb_log_buffer_size = 8M
innodb_log_file_size = 100M
innodb_log_files_in_group = 3
innodb_max_dirty_pages_pct = 50
innodb_file_per_table = 1
innodb_rollback_on_timeout
innodb_status_file = 1
innodb_io_capacity = 2000
transaction_isolation = REPEATABLE-READ
innodb_flush_method = O_DIRECT

5.データベースを起動します

# cd /usr/local/mysql/bin
#初始化
# ./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/data/mysql --user=mysql --initialize
#启动
#./mysqld_safe --defaults-file=/etc/my.cnf &
  • -initializeログエラーに記録された一時的なデータベース初期生成されたパスワードを表し、
    パスワード入力がないことを示し-initialize、安全でないと

6、着陸データベース

初期パスワードを見ます

# cat /data/mysql/error.log | grep password

ここに画像を挿入説明
着陸

# ./mysql -u root -p

7、パスワードをリセット

root@localhost [(none)]>SET PASSWORD = 'root123';	#更改密码
root@localhost [(none)]>ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;	#永不过期
root@localhost [(none)]>flush privileges;			#刷新权限

ここに画像を挿入説明

8は、MySQLデータベースをシャットダウン

ノーマルクローズ

# cd /usr/local/mysql/bin/
# ./mysqladmin -uroot -proot123 shutdown

ここに画像を挿入説明
非通常のシャットダウンプロセスは、MySQLを殺す必要があります

便宜上、環境変数は、MySQLに参加します

# vim /etc/profile
PATH="$PATH":/usr/local/mysql/bin		#加入
# source /etc/profile

おすすめ

転載: blog.csdn.net/weixin_44297303/article/details/92772315