linux安裝mysql5.7.17
安裝之前準備工作
- 準備安裝檔案
- 沒有安裝過mydql的系統,或者徹底解除安裝幹淨
解除安裝原有mysql
- 執行# service mysqld status,mysql沒有運作,停止服務失敗
linux安裝mysql5.7.17 - 開始解除安裝,查找所有mysql檔案# find / -name mysql
linux安裝mysql5.7.17 -
删除檔案
# rm -rf /usr/local/mysql/mysql-advanced-5.7.17-linux-glibc2.5-x86_64/
# rm -rf /usr/share/mysql
# rm -rf /usr/bin/mysql
# rm -rf /usr/lock/subsys/
# rm -rf /var/lock/subsys/mysql
id mysql
# userdel mysql
# service mysqld status
顯示未被識别的服務證明删除幹淨
linux安裝mysql5.7.17
開始安裝
-
建立安裝目錄 # mkdir /usr/local/mysql
建立資料檔案夾 # mkdir /data/mysql
-
将安裝檔案放至/usr/local/mysql檔案夾内,進行解壓
# tar -zxvf mysql-advanced-5.7.17-linux-glibc2.5-x86_64.tar.gz
linux安裝mysql5.7.17 -
重命名解壓後的檔案夾 # mv /usr/local/mysql/mysql-advanced-5.7.17-linux-glibc2.5-x86_64 /usr/local/mysql/mysql
新版mysql隻認 /usr/local/mysql安裝路徑,是以配置檔案中的路徑需要修改
-
# groupadd mysql
-
# useradd -r -g mysql mysql
# chown -R mysql:mysql /usr/local/mysql/mysql/ # chown -R mysql:mysql /data/mysql/ # chmod -R 755 /usr/local/mysql/mysql/ # yum search libaio//檢視有沒有依賴包 # cd /usr/local/mysql/mysql/bin # ./mysqld --user=mysql --basedir=/usr/local/mysql/mysql --datadir=/data/mysql --initialize//注意[email protected]:之後紅圈圈住的為初始化臨時密碼,初次登入時要用到;執行這步報錯原因可能是之前安裝在datadir目錄中的殘留檔案沒有删除
linux安裝mysql5.7.17 # sh /usr/local/mysql/mysql/support-files/mysql.server start
# vim /usr/local/mysql/mysql/support-files/mysql.server//修改路徑
# cp /usr/local/mysql/mysql/support-files/mysql.server /etc/init.d/mysqld
# chmod 755 /etc/init.d/mysqld
# vi /etc/my.cnf //将下面一段複制進去,替換了檔案中的所有内容
[client]
socket =/usr/local/mysql/mysql/mysql.sock
host=localhost
user=root
password=‘root’
# pipe
# socket=0.0
port=3306
[mysql]
default-character-set=utf8
[mysqld]
lower_case_table_names=1
basedir=/usr/local/mysql/mysql
datadir=/data/mysql
port=3306
pid-file=/usr/local/mysql/mysql/mysqld.pid
#skip-grant-tables
skip-name-resolve
socket = /usr/local/mysql/mysql/mysql.sock
character-set-server=utf8
default-storage-engine=INNODB
explicit_defaults_for_timestamp = true
# Server Id.
server-id=1
max_connections=2000
query_cache_size=0
table_open_cache=2000
tmp_table_size=246M
thread_cache_size=300
#限定用于每個資料庫線程的棧大小。預設設定足以滿足大多數應用
thread_stack = 192k
key_buffer_size=512M
read_buffer_size=4M
read_rnd_buffer_size=32M
innodb_data_home_dir = /data/mysql
innodb_flush_log_at_trx_commit=0
innodb_log_buffer_size=16M
innodb_buffer_pool_size=256M
innodb_log_file_size=128M
innodb_thread_concurrency=128
innodb_autoextend_increment=1000
innodb_buffer_pool_instances=8
innodb_concurrency_tickets=5000
innodb_old_blocks_time=1000
innodb_open_files=300
innodb_stats_on_metadata=0
innodb_file_per_table=1
innodb_checksum_algorithm=0
back_log=80
flush_time=0
join_buffer_size=128M
max_allowed_packet=1024M
max_connect_errors=2000
open_files_limit=4161
query_cache_type=0
sort_buffer_size=32M
table_definition_cache=1400
binlog_row_event_max_size=8K
sync_master_info=10000
sync_relay_log=10000
sync_relay_log=10000
sync_relay_log_info=10000
#批量插入資料緩存大小,可以有效提高插入效率,預設為8M
bulk_insert_buffer_size = 64M
interactive_timeout = 86400
wait_timeout = 86400
log-bin-trust-function-creators=1
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
# service mysqld start//重新開機mysql
# /usr/local/mysql/mysql/bin/mysql -uroot -p,J0j4dw:kGnm//用臨時密碼登入
mysql> set password=password(‘root’);//修改密碼
grant all privileges on . to root@’%’ identified by ‘root’;
flush privileges;