Day47
課堂筆記
2019年5月7日
mysql安裝和數(shù)據(jù)遷移
#1.創(chuàng)建用戶
useradd mysql -s /sbin/nologin -M
id mysql
#2.創(chuàng)建目錄上傳軟件
mkdir -p /server/tools/
cd /server/tools/
#wget -----
#3浙垫、解壓安裝
tar xf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
mkdir -p /application
mv mysql-5.7.26-linux-glibc2.12-x86_64 /application/mysql-5.7.26
ln -s /application/mysql-5.7.26/ ?/application/mysql
#4朗若、配置配置文件
rpm -e --nodeps mariadb-libs
cat >/etc/my.cnf<<EOF
[mysqld]
basedir = /application/mysql/
datadir = /application/mysql/data
socket = /tmp/mysql.sock
server_id = 1
port = 3306
log_error = /application/mysql/data/oldboy_mysql.err
[mysql]
socket = /tmp/mysql.sock
prompt = oldboy [\\d]>
EOF
#5.初始化數(shù)據(jù)庫
rpm -qa mariadb-libs
yum install libaio-devel -y
mkdir -p /application/mysql/data
chown -R mysql.mysql /application/mysql/
/application/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/application/mysql/ --datadir=/application/mysql/data
#6愧沟、配置啟動
cat >/etc/systemd/system/mysqld.service<<EOF
[Unit]
Description=MySQL Server by oldboy
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/application/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000
EOF
systemctl start mysqld
systemctl enable mysqld
netstat -lntup|grep mysql
#7.登錄測試
echo 'export PATH=/application/mysql/bin:$PATH' >>/etc/profile
. /etc/profile
mysql
quit
#數(shù)據(jù)庫遷移:
從單機LNMP遷移到DB01獨立的mysql
web02:
備份:
[root@web02 ~]# mysqldump -uroot -poldboy123 -A -B|gzip >/tmp/web02_db.sql.gz
mysqldump: [Warning] Using a password on the command line interface can be insecure.
拷貝到異機:
[root@web02 ~]# scp /tmp/web02_db.sql.gz 10.0.0.51:/tmp
systemctl stop mysqld
systemctl disable mysqld
lsof -i :3306
web02:
[root@web02 ~]# cd /application/nginx/html/blog/
[root@web02 /application/nginx/html/blog]# vim wp-config.php
define( 'DB_NAME', 'wordpress' );
/** MySQL database username */
define( 'DB_USER', 'wordpress' );
/** MySQL database password */
define( 'DB_PASSWORD', 'oldboy123' );
/** MySQL hostname */
define( 'DB_HOST', '172.16.1.51' );
db01:
lsof -i :3306
[root@db01 ~]# cd /tmp
[root@db01 /tmp]# gzip -d web02_db.sql.gz
[root@db01 /tmp]# mysql </tmp/web02_db.sql
grant all privileges on wordpress.* to wordpress@'172.16.1.%' identified by 'oldboy123';
flush privileges;
select user,authentication_string,host from mysql.user;