1: Check whether mysql has been installed locally
rpm -qa | grep mysql
2: Uninstall previous mysql
rpm -e Existing MySQL full name
Step 2: unzip the file
[root@MiWiFi-R3-srv ~]# tar -zxvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz -C /usr/local/
Change the file name to mysql:
[root@MiWiFi-R3-srv local]# mv mysql-5.7.17-linux-glibc2.5-x86_64/ mysql
Step 3: configure startup file
Then go to the mysql support files directory and copy my CNF to / etc / my CNF (automatically read when mysqld starts)
[root@MiWiFi-R3-srv local]# cd mysql/support-files/ [root@MiWiFi-R3-srv support-files]# cp my-default.cnf /etc/my.cnf cp: overwrite '/etc/my.cnf'? yes
- : if you install the default mysql when installing the Linux virtual machine, and then operate the above steps, the terminal will prompt you whether the file already exists or not. Enter yes to overwrite it.
2. Configure database encoding
[root@MiWiFi-R3-srv support-files]# vim /etc/my.cnf
Add the following:
[mysql] default-character-set=utf8 [mysqld] default-storage-engine=INNODB character_set_server=utf8
3. Copy mysql Server to / etc / init D / directory (the purpose is to realize the automatic execution effect of startup)
[root@MiWiFi-R3-srv support-files]# cp mysql.server /etc/init.d/mysql
4. Modify / etc / init D / MySQL parameters
[root@MiWiFi-R3-srv support-files]# vim /etc/init.d/mysql
Modify the following:
basedir=/usr/local/mysql datadir=/usr/local/mysql/data
5. For security and convenience, create a special user who operates the database
Create a mysql group:
[root@MiWiFi-R3-srv support-files]# groupadd mysql
Create a mysql user and put the user into the mysql group:
[root@MiWiFi-R3-srv support-files]# useradd -r -g mysql mysql
Set a password for mysql user:
[root@MiWiFi-R3-srv support-files]# passwd mysql
Change the owner of the directory / usr/local/mysql:
[root@MiWiFi-R3-srv support-files]# chown -R mysql:mysql /usr/local/mysql/
Step 4: initialize mysql database
[root@MiWiFi-R3-srv support-files]# cd /usr/local/mysql/bin/ [root@MiWiFi-R3-srv bin]# ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
A temporary password is generated after initialization root@localhost :: * (it's best to record this temporary password first)
2. Encrypt the database
[root@MiWiFi-R3-srv bin]# ./mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
3. Start mysql
[root@MiWiFi-R3-srv bin]# ./mysqld_safe --user=mysql &
4. Check whether mysql is started
[root@MiWiFi-R3-srv bin]# ps -ef|grep mysql
If a process is found, it means that the startup is successful.
Step 5: enter the client
1. Login:
[root@MiWiFi-R3-srv bin]# ./mysql -uroot -p
Enter password:Enter the previous temporary password here
2. Change password
mysql> set password=password('New password');
Step 6: set up remote access
1: Open the default port 3306 of mysql:
[root@MiWiFi-R3-srv bin]# firewall-cmd --zone=public --add-port=3306/tcp --permanent success [root@MiWiFi-R3-srv bin]# firewall-cmd --reload success
2: Set up remote access to mysql
Set remote access account: grant all privileges on To remote access user name @ '%' identified by 'user password';
mysql> grant all privileges on *.* to root@'%' identified by 'root';
Refresh:
mysql> flush privileges;
Step 7: set the startup self startup
1. Add service mysql
[root@MiWiFi-R3-srv bin]# chkconfig --add mysql
2. Set mysql service to self start
[root@MiWiFi-R3-srv bin]# chkconfig mysql on
Step 8: configure environment variables
[root@MiWiFi-R3-srv ~]# vim /etc/profile
Add to the last line:
export PATH=$JAVA_HOME/bin:/usr/local/mysql/bin:$PATH
Make the modification effective:
[root@MiWiFi-R3-srv ~]# source /etc/profile
After mysql is set up, start master-slave replication
1. Set up the host:
vim /etc/my.cnf |
#Primary server unique ID server-id=1 #Enable binary logging log-bin=mysql-bin #Set the database not to be copied (multiple databases can be set) binlog-ignore-db=mysql binlog-ignore-db=information_schema #Set the database to be replicated Binlog do DB = name of the primary database to be replicated #Format logbin binlog_format=STATEMENT |
2. Set up slave
Modify the configuration file: VIM / etc / my cnf #Unique ID of slave server server-id=2 #Enable relay logging relay-log=mysql-relay |
3. Restart MySQL service from host and slave
4. Establish an account on the host and authorize the slave
GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%' IDENTIFIED BY '123123'; |
5.
Query the status of master show master status; #Record the values of File and Position #After this step, do not operate the master server MySQL again to prevent the state value of the master server from changing |
6.
Configure the host to be replicated on the slave
CHANGE MASTER TO MASTER_HOST = 'IP address of host', MASTER_USER='slave', MASTER_PASSWORD='123123', MASTER_LOG_FILE='mysql-bin. Specific number ', MASTER_LOG_POS = specific value; |
7.
Start copy from server
|
8. Test: create a new database in the master database, create a new table, insert data, and then log in to the slave server to check whether the data exists.