赞
踩
更新apt仓库信息,输入下列命令:
apt update
安装mysql服务
apt install -y mysql-server
查看mysql服务状态:
输入下面命令:systemctl status mysql
4.登录mysql设置密码
直接输入命令:mysql
5.在mysql内设置密码为feitian,可自行设置密码
输入命令:
use mysql
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'feitian';
grant all privileges on root.*to root@"%" with grant option;
flush privileges; 刷新权限
6.退出mysql服务台
输入命令:exit;
7.对mysql进行初始化
执行下列命令,此命令是mysql安装后自带的配置程序
mysql_secure_installation
可以通过which命令查看这个自带程序的安装位置
which mysql_secure_installation
输入密码123456
是否开启密码验证插件,如果需要增强密码安全性,输入y并回车,不需要增强直接回车即可
是否更改root密码,需要输入y回车,不需要直接回车,因为刚才该过了这里直接回车
是否移除匿名用户,移除输入y回车,不移除直接回车,这里设置移除
是否禁止root用户远程登陆,禁止输入y回车,不禁止直接回车,这里选择不禁止
是否移除自带的测试数据库,移除输入y回车,不移除直接回车,这里选择不移除
是否刷新权限,输入y刷新,直接回车不刷新,这里选择y刷新
8.重新登陆mysql,使用更改后的密码
mysql -uroot -p
使用mysql数据库
use mysql;
更改root用户密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'feitian';
更新root访问权限为 ‘%’ 为所有主机可访问
update user SET Host = '%' where User = 'root';
刷新权限
flush privileges;
授予root用户对所有数据库和表的相应操作权限, 赋予远程登陆的权限
grant all privileges on *.* to 'root'@'%' with grant option;
查询mysql用户与主机权限
select user,host from mysql.user;
建新的zabbix数据库
create database zabbix character set utf8mb4 collate utf8mb4_bin;
新建测试表tb10
mysql
use test;
create table tb10 (id int);
insert into tb10 values(1),(2);
flush logs;
insert into tb10 values(3),(4);
flush logs;
insert into tb10 values(5),(6);
commit;
查看tb10表格内的数据
select * from tb10;
建新的zabbix用户,确认密码为feitian,允许在任意主机登录
create user zabbix@"%" identified by 'feitian';
赋与zabbix用户在任意主机登陆所有数据库及更改权限
grant all privileges on *.* to 'zabbix'@'%' with grant option;
set global log_bin_trust_function_creators = 1;
刷新权限
flush privileges;
使zabbix可以远程访问数据库mysql
8.修改/etc/mysql/mysql.conf.d/mysqld.cnf文件,有的修改/etc/my.cnf具体根据自身环境来
vim /etc/mysql/mysql.conf.d/mysqld.cnf
修改 bind-address = 0.0.0.0 (远程连接访问)
查看本地mysql依赖详情
dpkg --list | grep mysql
卸载软件及其配置
apt remove mysql-common
rm -rf /var/lib/mysql /etc/my.cnf 删除mysql配置文件
一、删除php的相关包及配置sudo apt-get autoremove php7*
二、删除关联sudo find /etc -name "*php*" |xargs rm -rf
三、清除dept列表sudo apt purge `dpkg -l | grep php| awk '{print $2}' |tr "\n" " "`
四、检查是否卸载干净(无返回就是卸载完成)dpkg -l | grep php7.0
2.卸载并清除mysql5.7依赖软件
apt autoremove --purge -y mysql-server-5.7
3.清理dpkg的列表中有“rc”状态的软件包
dpkg -l | grep ^rc| awk '{print$2}'| sudo xargs dpkg -P
4.检查依赖项情况,如果输出的结果为空,说明已经卸载干净了,可进行第二步安装,如果不为空继续进行删除卸载
dpkg --list | grep mysql
5.再次执行删除
sudo apt autoremove --purge mysql-apt-config
1、关闭服务
sudo service mysql stop
2、修改文件
vim/etc/mysql在你的MySQL文件下找到/etc/mysql/mysql.conf.d/mysqld.cnf这个文件
skip-grant-tables
skip-networking
3、重启mysql,修改密码
sudo service mysql restart
修改mysql登陆密码
ues mysql;
ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘123456’;
#mysql5.0版本更改root密码
注意不同版本使用不同的命令
UPDATE user SET authentication_string="123456" WHERE user="root"; #mysql8.0更改root密码
刷新权限
flush privileges;
4、关闭mysql服务
sudo service mysql stop
5、删除my.cnf增加的内容
6、可以登录啦
mysql -u root -p
安装环境:ubuntu20.04+mysql8.0
提示:mysql3306端口需放开,mysqld.cnf需放开bind =0.0.0.0
服务器:
主机: 192.168.81.130
从机: 192.168.81.131
一. 配置主服务器mysql-master
1.1 修改配置文件
在 /etc/mysql/mysql.conf.d/mysqld.cnf的核心配置文件的[mysqld]节点内,移动光标到文件最底端,修改并新增配置:
[mysqld]
# 主从配置-主机(所有配置必须写在[mysqld]下)
server-id = 0001 # 服务器id,唯一
log_bin = /var/log/mysql/mysql-bin.log # 二进制日志,实现主从的关键
binlog_format = mixed # 日志格式
read-only = 0 #[可选] 0(默认)表示读写(主机),1表示只读(从机)
binlog_expire_logs_seconds = 604800 # 日志过期的时间秒数
max_binlog_size = 200M # 最大二进制日志文件,此参数的最大和默认值是1GB
binlog_do_db = test # 同步的数据库
binlog_ignore_db = mysql,sys #不同步的数据库日志
1.2创建专门用于主从复制用户账号。因此使用root账户登录mysql,并执行如下指令
#登录
mysql -u root -p
#创建用户 我这里用户名为copyuser,注意这里的ip是从库服务器的ip
CREATE USER 'copyuser'@'192.168.81.130' IDENTIFIED WITH mysql_native_password BY '123456';
#给主从复制账号授权
grant replication slave on *.* to 'copyuser'@'192.168.81.130';
刷新权限
flush privileges;
1.3重启主库的mysql
service mysql restart
1.4再次登录mysql,使用如下指令查看master的状态
show master status;
结果类似如下:我们需要关注File和Position的信息,后面要用到。
二、 配置从服务器mysql-slave
1.在 /etc/mysql/mysql.conf.d/mysqld.cnf的核心配置文件的[mysqld]节点内,移动光标到文件最底端,修改并新增配置:
server-id = 2 #服务器 id,随意,但要唯一
log_bin = /var/log/mysql/mysql-bin.log #二进制文件存放路径
read-only = 1 #[可选] 0(默认)表示读写(主机),1表示只读(从机)
binlog_expire_logs_seconds = 2592000 #设置日志文件保留的时长,单位是秒
max_binlog_size = 100M #控制单个二进制日志大小。此参数的最大和默认值是1GB
replicate_do_db = test #待同步的数据库日志
replicate_ignore_db = mysql,sys #不同步的数据库日志
2. 然后重启从库的mysql
service mysql restart
3.实现主从同步,在从库具体配置如下:
#1,先登录mysql,然后执行后续代码
mysql -u root -p密码
#2,关闭从库
stop slave;
#3,设置同步,注意这里是主库ip,日志名称和位置是我们之前上图中看到的名称和位置
change master to master_host='192.168.81.130',master_user='copyuser',master_password='123456',master_log_file='mysql-bin.000002',master_log_pos=157;
mysql-bin与master需与配置里对应
#4,开启从库(关闭防火墙)
start slave;
# 5,检查服务器状态
show slave status \G;
检测服务器状态正常情况下如下图:
看到Replica has read all relay log; waiting for more updates基本说明配置成功了,已经开始了主从复制。
这两项参数 为 YES说明搭建成功了:
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
主节点创建test库,从节点查看是否同步;
create database test;
把zabbix数据库备份到当前目录下为zabbix.sql
mysqldump -uroot -p zabbix > zabbix.sql
多库备份
mysqldump -uroot -p zabbix mysql test > test msyql zabbix.sql
备份所有库
mysqldump -uroot -p123 –all-databases > all.sql
备份数据库中的表
mysqldump -uroot -p123 db1 user >d:\ db1-user.sql
把数据库test的刚备份的数据导入数据库test
mysql -uroot -p test< test.sql
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。