1.1 前期規劃
1.2 系統環境
1.3 軟件下載
1.4 調整文件描述符
1.5 安裝程序
1.6 部署3306實例
1.6.1 創建3306實例相關目錄
1.6.2 配置3306實例配置文件
1.6.3 初始化準備並且初始化
1.6.4 編寫3306實例的啓動腳本
1.6.5 啓動3306實例且修改密碼
1.6.6 加入開機自啓動
1.7 部署3307實例
1.7.1 創建3307實例相關目錄
1.7.2 配置3307實例配置文件
1.7.3 初始化準備並且初始化
1.7.4 編寫3307實例的啓動腳本
1.7.5 啓動3307實例且修改密碼
1.7.6 加入開機自啓動
1.8 查看3306和3307實例的運行情況
1.1 前期規劃
01:虛擬機一臺,2vCPU,4G內存,分別部署3306和3307兩個實例,使用"多配置文件"的方式
02:MySQL程序的安裝目錄:/data/apps/mysql-5.7.22 要做軟件鏈接:/data/apps/mysql
03:3306實例的配置文件路徑爲:/data/mysql/3306/my.cnf
04:3307實例的配置文件路徑爲:/data/mysql/3307/my.cnf
05:3306實例的相關目錄:/data/mysql/3306/{data,binlog,slowlog,errlog,redolog }
06:3307實例的相關目錄:/data/mysql/3307/{data,binlog,slowlog,errlog,redolog }
07:採用MySQL通用二進制包(mysql-5.7.22-linux-glibc2.12-x86_64.tar)
1.2 系統環境
[root@db01 ~]# cat /etc/redhat-release;uname -r;uname -m
CentOS release 6.8 (Final)
2.6.32-642.el6.x86_64
x86_64
[root@db01 ~]# /etc/init.d/iptables status
iptables: Firewall is not running.
[root@db01 ~]# getenforce
Disabled
[root@db01 ~]# ifconfig eth0|awk -F "[ :]+" 'NR==2{print $4}'
10.0.0.10
[root@db01 ~]# ifconfig eth1|awk -F "[ :]+" 'NR==2{print $4}'
172.16.1.10
[root@db01 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 26G 1.5G 23G 6% /
tmpfs 1.9G 0 1.9G 0% /dev/shm
/dev/sda1 976M 38M 888M 5% /boot
/dev/sdb1 50G 52M 47G 1% /data
1.3 軟件下載
鏈接:https://pan.baidu.com/s/1FT4lwzpLq_zup-8bSEx3WA
提取碼:ff3h
1.4 調整文件描述符
[root@db01 ~]# cat >>/etc/security/limits.conf <<EOF
* soft nproc 65535
* hard nproc 65535
* soft nofile 65535
* hard nofile 65535
* soft stack 65535
* soft stack 65535
EOF
[root@db01 ~]# echo "* - proc 65535" > /etc/security/limits.d/90-nproc.conf
[root@db01 ~]# ulimit -a <==退出後重新連接後,查看
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 31375
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 65535
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 65535
cpu time (seconds, -t) unlimited
max user processes (-u) 65535
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
1.5 安裝程序
##卸載系統自帶的mysql相關程序
[root@db01 ~]# rpm -qa|grep mysql
mysql-libs-5.1.73-7.el6.x86_64
[root@db01 ~]# rpm -e --nodeps mysql-libs-5.1.73-7.el6.x86_64
[root@db01 ~]# rpm -qa|grep mysql
[root@db01 ~]#
##安裝相關的依賴包
[root@db01 ~]# yum install gcc gcc-c++ bison ncurses ncurses-devel numactl zlib libxml2 openssl libaio libstdc++-devel -y
[root@db01 ~]# rpm -qa gcc gcc-c++ bison ncurses ncurses-devel numactl zlib libxml2 openssl libaio libstdc++-devel
libxml2-2.7.6-21.el6_8.1.x86_64
gcc-c++-4.4.7-23.el6.x86_64
zlib-1.2.3-29.el6.x86_64
ncurses-5.7-4.20090207.el6.x86_64
bison-2.4.1-5.el6.x86_64
numactl-2.0.9-2.el6.x86_64
openssl-1.0.1e-57.el6.x86_64
gcc-4.4.7-23.el6.x86_64
ncurses-devel-5.7-4.20090207.el6.x86_64
libstdc++-devel-4.4.7-23.el6.x86_64
libaio-0.3.107-10.el6.x86_64
##創建mysql用戶,不讓其登錄,不創建家目錄
[root@db01 ~]# useradd -s /sbin/nologin -M mysql
[root@db01 ~]# id mysql
uid=501(mysql) gid=501(mysql) groups=501(mysql)
[root@db01 ~]# tail -1 /etc/passwd
mysql:x:501:501::/home/mysql:/sbin/nologin
##創建/data/apps目錄和/root/tools目錄,上傳軟件到/root/tools後,解壓到/data/apps目錄下
[root@db01 ~]# mkdir -p /data/apps /root/tools
[root@db01 ~]# ls -ld /data/apps/ /root/tools/
drwxr-xr-x 2 root root 4096 Dec 8 23:54 /data/apps/
drwxr-xr-x 2 root root 4096 Dec 8 23:54 /root/tools/
[root@db01 ~]# cd /root/tools/
[root@db01 tools]# rz
[root@db01 tools]# ll mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
-rw-r--r-- 1 root root 643790848 Nov 21 09:47 mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
[root@db01 tools]# tar xf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz -C /data/apps/
[root@db01 tools]# mv /data/apps/mysql-5.7.22-linux-glibc2.12-x86_64/ /data/apps/mysql-5.7.22
[root@db01 tools]# ln -s /data/apps/mysql-5.7.22/ /data/apps/mysql
[root@db01 tools]# ll /data/apps/mysql
lrwxrwxrwx 1 root root 24 Dec 9 00:09 /data/apps/mysql -> /data/apps/mysql-5.7.22/
[root@db01 tools]# chown -R mysql:mysql /data/apps/mysql/
[root@db01 tools]# ls -ld /data/apps/mysql/
drwxr-xr-x 9 mysql mysql 4096 Dec 9 00:08 /data/apps/mysql/
[root@db01 tools]# echo "PATH=/data/apps/mysql/bin:$PATH" >>/etc/bashrc
[root@db01 tools]# source /etc/bashrc
[root@db01 tools]# echo $PATH
/data/apps/mysql/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
1.6 部署3306實例
1.6.1 創建3306實例相關目錄
[root@db01 ~]# mkdir /data/mysql/3306/{data,errlog,binlog,slowlog,redolog} -p
[root@db01 ~]# tree /data/mysql/3306/
/data/mysql/3306/
|-- binlog
|-- data
|-- errlog
|-- redolog
`-- slowlog
5 directories, 0 files
1.6.2 配置3306實例配置文件
[root@db01 ~]# vim /data/mysql/3306/my.cnf
[client]
port=3306
socket=/data/mysql3306/mysql.sock
[mysql]
no_auto_rehash
[mysqld]
###Basic Parameters
user=mysql
port=3306
basedir=/data/apps/mysql
datadir=/data/mysql/3306/data
socket=/data/mysql/3306/mysql.sock
pid_file=/data/mysql/3306/mysql.pid
character_set_server=utf8
skip_character_set_client_handshake=1
###Server id
server_id=3306
###Binlog Parameters
log_output=FILE
log_timestamps=system
binlog_format=row
expire_logs_days=15
max_binlog_size=2M
binlog_cache_size=2M
max_binlog_cache_size=4M
sync_binlog=1
master_info_repository=table
binlog_rows_query_log_events=on
log_bin_trust_function_creators=1
log_bin=/data/mysql/3306/binlog/mysql_bin
###Slowlog Parameters
log_slow_admin_statements=1
slow_query_log=on
long_query_time=2
log_queries_not_using_indexes=on
slow_query_log_file=/data/mysql/3306/slowlog/mysql_slow.log
###Errlog Parameters
log-error=/data/mysql/3306/errlog/mysql_error.log
###Other Parameters
autocommit=on
skip_external_locking=on
skip_name_resolve=on
max_connections=800
max_connect_errors=1000
max_allowed_packet=200M
wait_timeout=1800
interactive_timeout=1800
open_files_limit=65535
group_concat_max_len=4294967295
symbolic_links=0
transaction_write_set_extraction=off
transaction_isolation=READ-COMMITTED
explicit_defaults_for_timestamp=1
sql_mode="STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER"
###Innodb Parameters
default_storage_engine=InnoDB
innodb_flush_log_at_trx_commit=1
innodb_buffer_pool_size=500M
innodb_buffer_pool_instances=8
innodb_buffer_pool_dump_at_shutdown=1
innodb_buffer_pool_dump_pct=40
innodb_buffer_pool_load_at_startup=1
innodb_file_per_table=1
innodb_change_buffering=all
innodb_doublewrite=on
innodb_autoextend_increment=64
innodb_temp_data_file_path=ibtmp1:200M:autoextend:max:20G
innodb_data_file_path=ibdata1:200M;ibdata2:200M;ibdata3:200M:autoextend:max:20G
innodb_flush_method=O_DIRECT
innodb_log_buffer_size=16M
innodb_log_file_size=4G
innodb_log_files_in_group=2
innodb_log_group_home_dir=/data/mysql/3306/redolog
innodb_undo_logs=128
innodb_undo_tablespaces=3
innodb_undo_log_truncate=1
innodb_max_undo_log_size=20G
innodb_purge_rseg_truncate_frequency=128
innodb_print_all_deadlocks=on
innodb_lock_wait_timeout=5
innodb_deadlock_detect=on
innodb_status_output_locks=on
innodb_strict_mode=1
innodb_sort_buffer_size=64M
innodb_open_files=65535
innodb_concurrency_tickets=5000
innodb_page_cleaners=4
innodb_old_blocks_time=1000
innodb_stats_on_metadata=0
innodb_checksum_algorithm=0
show_compatibility_56=on
innodb_lru_scan_depth=2000
innodb_flush_neighbors=1
innodb_purge_threads=4
innodb_large_prefix=1
1.6.3 初始化準備並且初始化
##創建錯誤日誌文件
[root@db01 ~]# grep "errlog" /data/mysql/3306/my.cnf
log-error=/data/mysql/3306/errlog/mysql_error.log
[root@db01 ~]# touch /data/mysql/3306/errlog/mysql_error.log
[root@db01 ~]# ll /data/mysql/3306/errlog/mysql_error.log
-rw-r--r-- 1 root root 0 Dec 9 00:29 /data/mysql/3306/errlog/mysql_error.log
##更改/data/mysql/3306/目錄下所有文件的屬主/組爲mysql用戶
[root@db01 ~]# chown -R mysql:mysql /data/mysql/3306/
[root@db01 ~]# ls -ld /data/mysql/3306/
drwxr-xr-x 7 mysql mysql 4096 Dec 9 00:25 /data/mysql/3306/
##初始化3306實例
[root@db01 ~]# mysqld --defaults-file=/data/mysql/3306/my.cnf --user=mysql --basedir=/data/apps/mysql --datadir=/data/mysql/3306/data/ --initialize
[root@db01 ~]# echo $?
0
1.6.4 編寫3306實例的啓動腳本
注意:
01:該腳本中停止mysql的方法爲:
mysqladmin -uUser -pPassword -S /data/mysql/3306/mysql.sock shutdown
02:腳本中有一個Pass變量,就是MySQL root用戶的密碼
03:當然你也可以設置成其它密碼,但必須得改腳本中的Pass變量的值(前提是用這個腳本)
[root@db01 ~]# vim /data/mysql/3306/mysqld
#!/bin/bash # # MySQL boot script # QQ:158316096 # Blog:http://blog.51cto.com/11576296 # # Define variables RETVAL=0 Port=3306 User=root Pass=chenliang Pid=/data/mysql/3306/mysql.pid Sock=/data/mysql/3306/mysql.sock My=/data/mysql/3306/my.cnf Path=/data/apps/mysql/bin # Determine the user to execute if [ $UID -ne $RETVAL ];then echo "Must be root to run scripts" exit 1 fi # Load the local functions [ -f /etc/init.d/functions ] && source /etc/init.d/functions # Define functions start(){ if [ ! -f "$Pid" ];then $Path/mysqld_safe --defaults-file=$My >/dev/null 2>&1 & RETVAL=$? if [ $RETVAL -eq 0 ];then action "Start MySQL [3306]" /bin/true else action "Start MySQL [3306]" /bin/false fi else echo "MySQL 3306 is running" exit 1 fi return $RETVAL } stop(){ if [ -f "$Pid" ];then $Path/mysqladmin -u$User -p$Pass -S $Sock shutdown >/dev/null 2>&1 RETVAL=$? if [ $RETVAL -eq 0 ];then action "Stop MySQL[3306]" /bin/true else action "Stop MySQL[3306]" /bin/false fi else echo "MySQL [3306] is not running" exit 1 fi return $RETVAL } status(){ if [ -f "$Pid" ];then echo "MySQL [3306] is running" else echo "MySQL [3306] is not running" fi return $RETVAL } # Case call functions case "$1" in start) start RETVAL=$? ;; stop) stop RETVAL=$? ;; restart) stop sleep 5 start RETVAL=$? ;; status) status RETVAL=$? ;; *) echo "USAGE:$0{start|stop|restart|status}" exit 1 esac # Scripts return values exit $RETVAL
1.6.5 啓動3306實例且修改密碼
##設置/data/mysql/3306/mysqld腳本的權限爲700(因爲腳本中有root用戶的密碼)
[root@db01 ~]# chmod 700 /data/mysql/3306/mysqld
[root@db01 ~]# ll /data/mysql/3306/mysqld
-rwx------ 1 root root 1897 Dec 9 00:44 /data/mysql/3306/mysqld
##啓動3306實例服務
[root@db01 ~]# /data/mysql/3306/mysqld start
Start MySQL [3306] [ OK ]
[root@db01 ~]# netstat -lntup|grep 3306
tcp 0 0 :::3306 :::* LISTEN 3442/mysqld
##修改mysql root的密碼爲chenliang(因爲現在爲初始密碼,必須得先改密碼)
[root@db01 ~]# grep "password" /data/mysql/3306/errlog/mysql_error.log
2018-12-09T00:34:38.917317+08:00 1 [Note] A temporary password is generated for root@localhost: emo*lwNYj2X0
[root@db01 ~]# mysql -uroot -p -S /data/mysql/3306/mysql.sock
Enter password: <==輸入密碼emo*lwNYj2X0
mysql>
mysql> select user,host,authentication_string,password_expired from mysql.user where user='root' and host='localhost';
+------+-----------+-------------------------------------------+------------------+
| user | host | authentication_string | password_expired |
+------+-----------+-------------------------------------------+------------------+
| root | localhost | *D072DB593E2E7B068E887A452EB1DB3981A5D844 | N |
+------+-----------+-------------------------------------------+------------------+
1 row in set (0.00 sec)
mysql>
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
mysql>
mysql> exit
Bye
[root@db01 ~]# mysql -uroot -p -S /data/mysql/3306/mysql.sock -e "show databases;"
Enter password: <==輸入密碼 chenliang
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
1.6.6 加入開機自啓動
[root@db01 ~]# echo -ne "\n# Boot start mysql service[3306].USER:chenliang TIME:2018-11-23\n/data/mysql/3306/mysqld start\n" >>/etc/rc.local
[root@db01 ~]# tail -2 /etc/rc.local
# Boot start mysql service[3306].USER:chenliang TIME:2018-11-23
/data/mysql/3306/mysqld start
1.7 部署3307實例
1.7.1 創建3307實例相關目錄
[root@db01 ~]# mkdir /data/mysql/3307/{data,errlog,binlog,slowlog,redolog} -p
[root@db01 ~]# tree /data/mysql/3307/
/data/mysql/3307/
|-- binlog
|-- data
|-- errlog
|-- redolog
`-- slowlog
5 directories, 0 files
1.7.2 配置3307實例配置文件
[root@db01 ~]# vim /data/mysql/3307/my.cnf
[client]
port=3307
socket=/data/mysql3307/mysql.sock
[mysql]
no_auto_rehash
[mysqld]
###Basic Parameters
user=mysql
port=3307
basedir=/data/apps/mysql
datadir=/data/mysql/3307/data
socket=/data/mysql/3307/mysql.sock
pid_file=/data/mysql/3307/mysql.pid
character_set_server=utf8
skip_character_set_client_handshake=1
###Server id
server_id=3307
###Binlog Parameters
log_output=FILE
log_timestamps=system
binlog_format=row
expire_logs_days=15
max_binlog_size=2M
binlog_cache_size=2M
max_binlog_cache_size=4M
sync_binlog=1
master_info_repository=table
binlog_rows_query_log_events=on
log_bin_trust_function_creators=1
log_bin=/data/mysql/3307/binlog/mysql_bin
###Slowlog Parameters
log_slow_admin_statements=1
slow_query_log=on
long_query_time=2
log_queries_not_using_indexes=on
slow_query_log_file=/data/mysql/3307/slowlog/mysql_slow.log
###Errlog Parameters
log-error=/data/mysql/3307/errlog/mysql_error.log
###Other Parameters
autocommit=on
skip_external_locking=on
skip_name_resolve=on
max_connections=800
max_connect_errors=1000
max_allowed_packet=200M
wait_timeout=1800
interactive_timeout=1800
open_files_limit=65535
group_concat_max_len=4294967295
symbolic_links=0
transaction_write_set_extraction=off
transaction_isolation=READ-COMMITTED
explicit_defaults_for_timestamp=1
sql_mode="STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER"
###Innodb Parameters
default_storage_engine=InnoDB
innodb_flush_log_at_trx_commit=1
innodb_buffer_pool_size=500M
innodb_buffer_pool_instances=8
innodb_buffer_pool_dump_at_shutdown=1
innodb_buffer_pool_dump_pct=40
innodb_buffer_pool_load_at_startup=1
innodb_file_per_table=1
innodb_change_buffering=all
innodb_doublewrite=on
innodb_autoextend_increment=64
innodb_temp_data_file_path=ibtmp1:200M:autoextend:max:20G
innodb_data_file_path=ibdata1:200M;ibdata2:200M;ibdata3:200M:autoextend:max:20G
innodb_flush_method=O_DIRECT
innodb_log_buffer_size=16M
innodb_log_file_size=4G
innodb_log_files_in_group=2
innodb_log_group_home_dir=/data/mysql/3307/redolog
innodb_undo_logs=128
innodb_undo_tablespaces=3
innodb_undo_log_truncate=1
innodb_max_undo_log_size=20G
innodb_purge_rseg_truncate_frequency=128
innodb_print_all_deadlocks=on
innodb_lock_wait_timeout=5
innodb_deadlock_detect=on
innodb_status_output_locks=on
innodb_strict_mode=1
innodb_sort_buffer_size=64M
innodb_open_files=65535
innodb_concurrency_tickets=5000
innodb_page_cleaners=4
innodb_old_blocks_time=1000
innodb_stats_on_metadata=0
innodb_checksum_algorithm=0
show_compatibility_56=on
innodb_lru_scan_depth=2000
innodb_flush_neighbors=1
innodb_purge_threads=4
innodb_large_prefix=1
1.7.3 初始化準備並且初始化
##創建錯誤日誌文件
[root@db01 ~]# grep "errlog" /data/mysql/3307/my.cnf
log-error=/data/mysql/3307/errlog/mysql_error.log
[root@db01 ~]# touch /data/mysql/3307/errlog/mysql_error.log
[root@db01 ~]# ll /data/mysql/3307/errlog/mysql_error.log
-rw-r--r-- 1 root root 0 Dec 9 01:08 /data/mysql/3307/errlog/mysql_error.log
##更改/data/mysql/3307/目錄下所有文件的屬主/組爲mysql用戶
[root@db01 ~]# chown -R mysql:mysql /data/mysql/3307/
[root@db01 ~]# ls -ld /data/mysql/3307/
drwxr-xr-x 7 mysql mysql 4096 Dec 9 01:06 /data/mysql/3307/
##初始化3307實例
[root@db01 ~]# mysqld --defaults-file=/data/mysql/3307/my.cnf --user=mysql --basedir=/data/apps/mysql --datadir=/data/mysql/3307/data/ --initialize
[root@db01 ~]# echo $?
0
1.7.4 編寫3307實例的啓動腳本
注意:
01:該腳本中停止mysql的方法爲:
mysqladmin -uUser -pPassword -S /data/mysql/3307/mysql.sock shutdown
02:腳本中有一個Pass變量,就是MySQL root用戶的密碼
03:當然你也可以設置成其它密碼,但必須得改腳本中的Pass變量的值(前提是用這個腳本)
[root@db01 ~]# vim /data/mysql/3307/mysqld
#!/bin/bash # # MySQL boot script # QQ:158316096 # Blog:http://blog.51cto.com/11576296 # # Define variables RETVAL=0 Port=3307 User=root Pass=chenliang Pid=/data/mysql/3307/mysql.pid Sock=/data/mysql/3307/mysql.sock My=/data/mysql/3307/my.cnf Path=/data/apps/mysql/bin # Determine the user to execute if [ $UID -ne $RETVAL ];then echo "Must be root to run scripts" exit 1 fi # Load the local functions [ -f /etc/init.d/functions ] && source /etc/init.d/functions # Define functions start(){ if [ ! -f "$Pid" ];then $Path/mysqld_safe --defaults-file=$My >/dev/null 2>&1 & RETVAL=$? if [ $RETVAL -eq 0 ];then action "Start MySQL [3307]" /bin/true else action "Start MySQL [3307]" /bin/false fi else echo "MySQL 3307 is running" exit 1 fi return $RETVAL } stop(){ if [ -f "$Pid" ];then $Path/mysqladmin -u$User -p$Pass -S $Sock shutdown >/dev/null 2>&1 RETVAL=$? if [ $RETVAL -eq 0 ];then action "Stop MySQL[3307]" /bin/true else action "Stop MySQL[3307]" /bin/false fi else echo "MySQL [3307] is not running" exit 1 fi return $RETVAL } status(){ if [ -f "$Pid" ];then echo "MySQL [3307] is running" else echo "MySQL [3307] is not running" fi return $RETVAL } # Case call functions case "$1" in start) start RETVAL=$? ;; stop) stop RETVAL=$? ;; restart) stop sleep 5 start RETVAL=$? ;; status) status RETVAL=$? ;; *) echo "USAGE:$0{start|stop|restart|status}" exit 1 esac # Scripts return values exit $RETVAL
1.7.5 啓動3307實例且修改密碼
##設置/data/mysql/3307/mysqld腳本的權限爲700(因爲腳本中有root用戶的密碼)
[root@db01 ~]# chmod 700 /data/mysql/3307/mysqld
[root@db01 ~]# ll /data/mysql/3307/mysqld
-rwx------ 1 root root 1897 Dec 9 01:18 /data/mysql/3307/mysqld
##啓動3307實例
[root@db01 ~]# /data/mysql/3307/mysqld start
Start MySQL [3307] [ OK ]
[root@db01 ~]# netstat -lntup|grep 3307
tcp 0 0 :::3307 :::* LISTEN 4709/mysqld
##修改mysql root的密碼爲chenliang(因爲現在爲初始密碼,必須得先改密碼)
[root@db01 ~]# grep "password" /data/mysql/3307/errlog/mysql_error.log
2018-12-09T01:14:15.815156+08:00 1 [Note] A temporary password is generated for root@localhost: >G(pEA)ao5H+
[root@db01 ~]# mysql -uroot -p -S /data/mysql/3307/mysql.sock
Enter password: <==輸入密碼>G(pEA)ao5H+
mysql>
mysql> alter user 'root'@'localhost' identified by 'chenliang';
Query OK, 0 rows affected (0.04 sec)
mysql> select user,host,authentication_string,password_expired from mysql.user where user='root' and host='localhost';
+------+-----------+-------------------------------------------+------------------+
| user | host | authentication_string | password_expired |
+------+-----------+-------------------------------------------+------------------+
| root | localhost | *D072DB593E2E7B068E887A452EB1DB3981A5D844 | N |
+------+-----------+-------------------------------------------+------------------+
1 row in set (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
mysql> exit
Bye
[root@db01 ~]# mysql -uroot -p -S /data/mysql/3307/mysql.sock -e "show databases;"
Enter password: <==輸入密碼chenliang
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
1.7.6 加入開機自啓動
[root@db01 ~]# echo -ne "\n# Boot start mysql service[3307].USER:chenliang TIME:2018-11-23\n/data/mysql/3307/mysqld start\n" >>/etc/rc.local
[root@db01 ~]# tail -2 /etc/rc.local
# Boot start mysql service[3307].USER:chenliang TIME:2018-11-23
/data/mysql/3307/mysqld start
1.8 查看3306和3307實例的運行情況
[root@db01 ~]# netstat -lntup|grep 330*
tcp 0 0 :::3306 :::* LISTEN 3442/mysqld
tcp 0 0 :::3307 :::* LISTEN 4709/mysqld
[root@db01 ~]# netstat -lntup|grep mysql
tcp 0 0 :::3306 :::* LISTEN 3442/mysqld
tcp 0 0 :::3307 :::* LISTEN 4709/mysqld