mysql學習3:第二章:mysql安裝啟動和關閉——mysql5.6安裝
接上一節;
本次實驗系統為centos7.4 x64
1.1. mysql5.6安裝過程
1.1.1. 建立mysql使用者並指定mysql使用者組。
建立使用者並指定使用者組
groupadd mysql
useradd -g mysql mysql -s /sblin/nologin
centos7.4 已預設建立mysql使用者
1.1.2. 解壓安裝包
軟體包家目錄統一放在/usr/local
# cd / usr/local
解壓mysql軟體包
# tar -zxvf mysql-5.6.42-linux-glibc2.12-x86_64.tar.gz
注意:書中示例版本為mysql5.6.16,本次實驗環境為mysql5.6.42
做軟連結,方便日後升級
# ln -s mysql-5.6.42-linux-glibc2.12-x86_64 mysql
給mysql目錄授權
chown mysql:mysql -R mysql
1.1.3. 建立安裝目錄
建立mysql資料庫的資料目錄datadir,建立在/data/mysql下面;
mkdir -p /data/mysql
chown -R /data/mysql mysql:mysql
[root@localhost local]# chown mysql:mysql -R mysql-5.6.42-linux-glibc2.12-x86_64/
1.1.4. 配置檔案
由於是二進位制安裝方式 ,資料庫配置檔案需要自己配置好。配置檔案如下:
[root@localhost etc]# vi my.cnf
[client]
port = 3306
socket = /tmp/mysql.sock
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
port=3306
socket=/tmp/mysql.sock
basedir=/usr/local/mysql
datadir=/data/mysql
open_files_limit=65535
back_log=103
max_connections=512
max_connect_errors=100000
table_open_cache=512
external-locking=FALSE
max_allowed_packet=128M
sort_buffer_size=2M
join_buffer_size=2M
thread_cache_size=32M
tmp_table_size=96M
max_heap_table_size=96M
slow_query_log=1
slow_query_log_file=/data/mysql/slow.log
log-error=/data/mysql/error.log
long_query_time=0.5
server-id=1323306
log-bin=/data/mysql/mysql-bin
sync_binlog=1
binlog_cache_size=4M
max_binlog_cache_size=128M
max_binlog_size=1024M
expire_logs_days=7
key_buffer_size=32M
read_buffer_size=1M
read_rnd_buffer_size=16M
bulk_insert_buffer_size=64M
character-set-server=utf8
default-storage-engine=InnoDB
binlog_format=row
#gtid_mode=on
#log_slave_updates=1
#enforce_gtid_consistency=1
interactive_timeout=300
wait_timeout=300
transaction_isolation=REPEATABLE-READ
innodb_buffer_pool_size=1434M
innodb_data_file_path=ibdata1:1024M:autoextend
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=16M
innodb_log_file_size=256M
innodb_log_files_in_group=2
innodb_max_dirty_pages_pct=50
innodb_file_per_table=1
innodb_locks_unsafe_for_binlog=0
[mysqldump]
quick
max_allowed_packet=32M
# 後增加
pid-file=/data/mysql/mysql.pid
1.1.5. 初始化資料庫
[root@localhost ~]# cd /usr/local/mysql/scripts/
[root@localhost scripts]# ls
mysql_install_db
# ./mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql --defaults-file=/etc/my.cnf --user=mysql
當出現兩個“OK”的四環,證明初始化資料庫成功了。
1.1.6. 啟動mysql資料庫
[root@localhost mysql]# pwd
/usr/local/mysql/bin
[root@localhost bin]# ./mysqld_safe --defaults-file=/etc/my.conf &
啟動過程日誌如下:
[root@localhost bin]# ./mysqld_safe --defaults-file=/etc/my.cnf &
[1] 16030
[root@localhost bin]# 181104 22:12:15 mysqld_safe Logging to '/data/mysql/error.log'.
181104 22:12:15 mysqld_safe Starting mysqld daemon with databases from /data/mysql
檢視mysql程式,驗證示範啟動成功:
設定mysql自動啟動,需要複製下列檔案到系統目錄下。
# cp support-files/mysql.server /etc/init.d/mysqld
# chmod 755 /etc/init.d/mysqld
(*注意,mysql二進位制安裝預設的路徑為/usr/local/mysql,啟動指令碼里/usr/local/mysql需要替換,如安裝位置變換為/data/mysql56
>sed -i 's#/usr/local/mysql#/data/mysql56#g' /data/mysql56/bin/mysqld_safe /etc/init.d/mysqld )
配置環境變數
> echo 'export PATH=/usr/local/mysql/bin:$PATH' >> /etc/profile
> source /etc/profile
新增到系統服務,用系統啟動
# service mysqld start
新增自動啟動
> chkconfig --add mysqld
> chkconfig mysqld on
> chkconfig --list mysqld
1.1.7. 配置檔案優先順序
mysql讀取配置檔案的順序是
/etc/my.cnf >/etc/mysql/my.cnf >/usr/local/mysql/etc/my.cnf> ~/.my.cnf
# mysql --help|grep cnf
order of preference, my.cnf, $MYSQL_TCP_PORT,
/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf
1.1.8. mysqld啟動選項
有三個引數
--defaults-file:使用指定位置的配置檔案;預設/etc/my.cnf
--defaults-extra-file:除了讀取預設配置檔案,還讀取額外的配置檔案;
--no-defaults:忽略所有的配置檔案
如一次性指定多個配置檔案,則以最後一次讀取的為準。
1.2. 建立密碼並提高安全性
從系統進入資料庫修改密碼:
# mysql
跳轉到資料庫後:
mysql> use mysql;
mysql>update user set password=password(‘root123’) where user=’root’;
mysql>flush privileges;
直接在系統中修改root密碼:
修改mysql密碼(mysql5.6安裝預設root密碼為空)
mysqladmin -u root password ‘root123’
低於5.7版本資料庫需要安全加固,只保留資料庫使用者未root,host為localhost的賬號。
清理無用的mysql使用者及庫
登陸mysql
> mysql -uroot -p
查詢使用者
mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql>
mysql>
mysql> select user,host from user;
+------+-----------------------+
| user | host |
+------+-----------------------+
| root | 127.0.0.1 |
| root | ::1 |
| | localhost |
| root | localhost |
| | localhost.localdomain |
| root | localhost.localdomain |
+------+-----------------------+
6 rows in set (0.00 sec)
> drop user "root"@"::1";
> drop user ""@"localhost";
> drop user ""@"localhost.localdomain";
> drop user "root"@"localhost.localdomain";
或
mysql> delete from user where user!=’root’ or host!=’localhost’;
刪除無用庫
> drop database test;
1.3. 關閉資料庫
正常關閉:
# >cd /usr/local/mysql.bin
#> ./mysqladmin -uroot -proot123 shutdown
非正常關閉,直接kill掉mysql程式。
1.4. 基礎資料庫的名稱
檢視當前庫有哪些
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)
mysql 5.7會多一個sys庫
information_schema資料庫是隻讀庫,儲存mysql伺服器維護其他資料庫的資訊。
常用表:
tables:記錄所有表基礎資訊
processlist:當前資料庫的連線
global_status:資料庫當前執行的各種狀態值;
global_variables:檢視資料庫中引數
partitions:資料庫中表分割槽的情況
INNODB_LOCKS,INNODB_TRX,INNODB_LOCK_WAITS;用來監控資料庫中鎖的情況。
mysql庫在初始化過程中自動建立,用的最多的表為user。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29519108/viewspace-2218716/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mysql學習4:第二章:mysql安裝啟動和關閉——mysql5.7安裝MySql
- mysql學習2:第二章:mysql安裝啟動和關閉——安裝前檢查MySql
- mysql學習5:第二章:mysql安裝啟動和關閉——密碼重置及許可權管理MySql密碼
- Linux安裝Mysql5.6LinuxMySql
- Linux上yum安裝mysql5.6LinuxMySql
- MySQL概述以及MySQL的安裝以及啟動MySql
- Mysql安裝解除安裝與啟停MySql
- 安裝mysql和mysql workbenchMySql
- 在 Windows 平臺下安裝與配置 MySQL 5.7.36之啟動與關閉MySQL服務WindowsMySql
- 在VMware已安裝的CentOS7.9上編譯安裝mysql5.6CentOS編譯MySql
- Mysql學習筆記(安裝篇)MySql筆記
- mysql安裝教程8.0.26 安裝mysql的步驟和方法MySql
- linux環境安裝——mysql安裝複習LinuxMySql
- LEMP環境搭建及配置(三)安裝MySQL5.6MySql
- Mysql5.6 for Centos6.5原始碼編譯安裝MySqlCentOS原始碼編譯
- 生產庫自動化MySQL5.6安裝部署詳細教程MySql
- Linux下的MongoDB安裝&啟動&關閉LinuxMongoDB
- 【Mysql】Windows下安裝和配置MysqlMySqlWindows
- mysql 安裝MySql
- 安裝mysqlMySql
- MySQL安裝MySql
- Linux安裝解除安裝MySQLLinuxMySql
- linux mysql5.6版本的安裝配置過程LinuxMySql
- 連網安裝mysql與原始碼安裝mysqlMySql原始碼
- 【MySQL安裝】Linux下安裝MySQL(預編譯)MySqlLinux編譯
- 【推薦 - glibc安裝】MySQL - 安裝MySql
- MySQL 8.0.21下載安裝教程及Navicat for MySQL安裝MySql
- 在linux(Centos 7以上版本親測)上安裝mysql5.6LinuxCentOSMySql
- mysql安裝 for LinuxMySqlLinux
- mysql安裝(rpm)MySql
- Windows安裝mysqlWindowsMySql
- docker安裝mysqlDockerMySql
- MySQL 的安裝MySql
- MySQL安裝配置MySql
- mysql window 安裝MySql
- mysql yum 安裝MySql
- MySQL安裝-未完MySql
- ubuntu安裝MySQLUbuntuMySql