8.6 MySQL

[root@mysql ~]# sed -i 'aexport PATH=/usr/local/mysql/bin/:PATH' /etc/profile //加到环境变量

[root@mysql ~]# source /etc/profile //使配置环境生效配置开机自启

[root@mysql ~]# chkconfig --list //列举

注:该输出结果只显示 SysV 服务,并不包含

原生 systemd 服务。SysV 配置数据

可能被原生 systemd 配置覆盖。

要列出 systemd 服务,请执行 'systemctl list-unit-files'。

查看在具体 target 启用的服务请执行

'systemctl list-dependencies [target]'。

netconsole 0:关 1:关 2:关 3:关 4:关 5:关 6:关

network 0:关 1:关 2:开 3:开 4:开 5:开 6:关

[root@mysql ~]# chkconfig --add mysql8

[root@mysql ~]# chkconfig --list

注:该输出结果只显示 SysV 服务,并不包含

原生 systemd 服务。SysV 配置数据

可能被原生 systemd 配置覆盖。

要列出 systemd 服务,请执行 'systemctl list-unit-files'。

查看在具体 target 启用的服务请执行

'systemctl list-dependencies [target]'。

mysql8 0:关 1:关 2:开 3:开 4:开 5:开 6:关

netconsole 0:关 1:关 2:关 3:关 4:关 5:关 6:关

network 0:关 1:关 2:开 3:开 4:开 5:开 6:关

//启动2345

[root@mysql ~]# chkconfig mysql8 on

[root@mysql ~]# vim /usr/local/mysql/my.cnf //配置文件

[mysqld]

basedir=/usr/local/mysql // 这是 MySQL 安装目录的路径。所有与 MySQL 相关的基础文件(例如二进制文件和库文件)都位于此目录下。

datadir=/usr/local/mysql/data // 这是 MySQL 数据目录的路径。所有数据库文件(包括数据、索引等)都存储在这个目录中。

socket=/tmp/mysql.sock //指定用于 MySQL 进程间通信的 UNIX 套接字文件的位置。这个文件允许客户端和服务器之间通过 UNIX socket 进行连接。

activate_all_roles_on_login=on //这项配置表示在用户登录 MySQL 时,系统会自动激活与该用户关联的所有角色。如果设定为 off,则只有用户明确请求的角色(s)会被激活。

[root@mysql ~]# service mysql8 restart

Shutting down MySQL.. SUCCESS!

Starting MySQL. SUCCESS!

[root@mysql ~]# ll /tmp //查看套字节文件

总用量 8

srwxrwxrwx. 1 mysql mysql 0 8月 6 10:10 mysql.sock

-rw-------. 1 mysql mysql 5 8月 6 10:10 mysql.sock.lock

srwxrwxrwx. 1 mysql mysql 0 8月 6 10:10 mysqlx.sock

-rw-------. 1 mysql mysql 5 8月 6 10:10 mysqlx.sock.lock

主从mysql

两台mysql服务器

主(192.168.1.129) 从(192.168.1.130)有yum本地源,阿里云镜像
主从:
[root@zmysql ~]# systemctl stop firewalld
[root@zmysql ~]# systemctl disable firewalld
[root@zmysql ~]# vim /etc/selinux/config
SELINUX=disabled
配置时间同步
[root@zmysql ~]# yum -y install ntpdate.x86_64
[root@zmysql ~]# ntpdate cn.ntp.org.cn
[root@zmysql ~]# yum -y install rsync

主:

[root@localhost ~]# tar -xf mysql-8.0.33-linux-glibc2.12-x86_64.tar
[root@localhost ~]# vim  mysql.sh            //编写安装脚本
#!/bin/bash
yum list installed |grep libaio
if [ $? ne 0 ]; then
yum -y install libaio
fi
echo libaio yes
rm -rf /etc/my.cnf
echo remo my.cnf yes
tar -xf mysql-8.0.33-linux-glibc2.12-x86_64.tar.xz
echo tar zx yes
cp -r ~/mysql-8.0.33-linux-glibc2.12-x86_64 /usr/local/mysql
echo copy file to /usr/local/mysql   yes
mkdir /usr/local/mysql/mysql-files
echo mysql-files yes
grep mysql /etc/passwd
useradd -r -s /sbin/nologin mysql
chown mysql:mysql /usr/local/mysql/mysql-files
chmod 750 /usr/local/mysql/mysql-files
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/
/usr/local/mysql/bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql8
sed -i '$aexport PATH=/usr/local/mysql/bin:$PATH' /etc/profile
source /etc/profile
[root@localhost ~]# source mysql.sh                    //运行脚本
[root@zmysql ~]# vim /usr/local/mysql/my.cnf               //编写配置文件
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
port=3306
log-error=/usr/local/mysql/data/db01-master.err
log-bin=/usr/local/mysql/data/binlog
server-id=10
character_set_server=utf8mb4
[root@zmysql ~]# service mysql8 restart            //重启服务
Shutting down MySQL. SUCCESS!
Starting MySQL. SUCCESS!

从:

[root@localhost ~]# tar -xf mysql-8.0.33-linux-glibc2.12-x86_64.tar
[root@localhost ~]# vim mysql.sh                //编写脚本,注释掉其中两行
#!/bin/bash
yum list installed |grep libaio
if [ $? ne 0 ]; then
        yum -y install libaio
fi
echo libaio yes
rm -rf /etc/my.cnf
echo remo my.cnf yes
tar -xf mysql-8.0.33-linux-glibc2.12-x86_64.tar.xz
echo tar zx yes
cp -r ~/mysql-8.0.33-linux-glibc2.12-x86_64 /usr/local/mysql
echo copy file to /usr/local/mysql   yes
mkdir /usr/local/mysql/mysql-files
echo mysql-files yes
grep mysql /etc/passwd
        useradd -r -s /sbin/nologin mysql
chown mysql:mysql /usr/local/mysql/mysql-files
chmod 750 /usr/local/mysql/mysql-files
#/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/
#/usr/local/mysql/bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql8
sed -i '$aexport PATH=/usr/local/mysql/bin:$PATH' /etc/profile
source /etc/profile
[root@localhost ~]# vim /usr/local/mysql/my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.soc
port=3310
log-error=/usr/local/mysql/data/db01-slave.err
relay-log=/usr/local/mysql/data/relaylog
server-id=11
character_set_server=utf8mb4

回到主服务器

[root@zmysql ~]# service mysql8 stop              //停止服务
[root@zmysql ~]# rm -rf /usr/local/mysql/data/auto.cnf           //这个操作保证两个mysql服务是一起的,因为这个文件存放的是mysql服务器的uuid,uuid保证了mysql服务器的唯一性,所以删除以后,两个服务器就可以做主从
[root@zmysql ~]# rsync -av /usr/local/mysql/data root@192.168.1.20:/usr/local/mysql/
[root@zmysql ~]# service mysql8 start

回到从服务器

[root@localhost ~]# service mysql8 start
[root@localhost ~]# mysql -P3310 -p1812354953Gf.               //使用主服务器账号密码可以登陆,默认就是用root登陆
mysql> exit
Bye

主服务器

[root@zmysql ~]# mysql -p1812354953Gf.
mysql> create user 'gao'@'%' identified by 'abc_123';
Query OK, 0 rows affected (0.00 sec)
mysql> grant replication slave on *.* to 'gao'@'%';
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> show variables like 'server_id';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| server_id     | 10    |
+---------------+-------+
1 row in set (0.00 sec)
mysql> flush tables with read lock;                              //锁定表
Query OK, 0 rows affected (0.00 sec)
mysql> show master status;                            //查看二进制文件
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000008 |      846 |              |                  |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

去从服务器;

mysql> change master to master_host='192.168.1.129',  master_user='gao', master_password='abc_123', master_port=3306, master_log_file='binlog.000008',
master_log_pos=846;
Query OK, 0 rows affected, 9 warnings (0.00 sec)
mysql> start slave;
mysql> show slave status \G;
[root@localhost ~]# mysql -ugao -pabc_123 -h 192.168.1.129 -P3306 --get-server-public-key
mysql> exit
Bye
[root@localhost ~]# mysql -P3310 -p1812354953Gf.
mysql> stop slave;
Query OK, 0 rows affected, 1 warning (0.01 sec)
mysql> reset slave;
Query OK, 0 rows affected, 1 warning (0.02 sec)
mysql> change master to master_host='192.168.1.129',  master_user='gao', master_password='abc_123', master_port=3306, master_log_file='binlog.000008', master_log_pos=846;
Query OK, 0 rows affected, 9 warnings (0.01 sec)
mysql> start slave;
Query OK, 0 rows affected, 1 warning (0.02 sec)
mysql> show slave status\G
相关推荐
qq_3089574712 小时前
adb 如何通过wifi连接手机
adb·智能手机·app自动化测试
白如意i1 天前
如何在 CentOS 6 上设置 NFS 挂载
数据库·mysql·adb
七月.末1 天前
安卓aab包的安装教程,附带adb环境的配置
android·adb
SRC_BLUE_171 天前
SQLI LABS | Less-39 GET-Stacked Query Injection-Intiger Based
android·网络安全·adb·less
jason.zeng@15022073 天前
ubuntu中安装mysql
mysql·ubuntu·adb
看山还是山,看水还是。3 天前
MySQL 安装
运维·数据库·笔记·学习·mysql·adb
开心呆哥4 天前
【如何使用 Python 脚本通过 ADB 命令来检查 Android 文件内容】
android·python·adb
秋秋秋秋秋雨4 天前
linux强制修改mysql的root账号密码
linux·mysql·adb
开心呆哥5 天前
【如何使用 ADB 脚本批量停止 Android 设备上的所有应用】
android·adb
CodingBrother5 天前
MySQL 和 PostgreSQL 的使用案例
mysql·adb·postgresql