网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
说明:centos7默认不支持mysql(原因大家都懂),默认支持的是mariadb,mariadb是mysql一个开源分支。所以安装mysql前一定要卸载mariadb,否则安装mysql会出现冲突
- 查看系统中是否存在mariadb
rpm -qa | grep mariadb
- rpm -e --nodeps 第一步查找出来的rpm包(evenyone)
二、卸载mysql
说明:若想安装新的mysql,必须先卸载干净旧的mysql
- 查看是否已安装过mysql
rpm -qa |grep -i mysql
-
yum remove 第一步查找出来的所有名称(evenyone)
-
验证mysql是否卸载干净
rpm -qa |grep -i mysql
- 查看mysql相关目录
find / -name mysql
- 删除所有mysql相关目录
rm -rf 目录
- 删除/etc/my.cnf
rm -rf /etc/my.cnf
- 删除/var/log/mysqld.log(如果不删除这个文件,会导致新安装的mysql无法生成新密码,导致无法登陆)
rm -rf /var/log/mysqld.log
三、安装Mysql
- 下载 mysql57-community-release-el7-8.noarch.rpm 的 YUM 源
wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
- 安装 mysql57-community-release-el7-8.noarch.rpm
rpm -ivh mysql57-community-release-el7-8.noarch.rpm
- 安装mysql-server,一路Y到底即可
yum install mysql-server
四、重置密码
- 安装完毕后,运行mysql,然后在 /var/log/mysqld.log 文件中会自动生成一个随机的密码,我们需要先取得这个随机密码,以用于登录 MySQL 服务端:
service mysqld start
grep “password” /var/log/mysqld.log
- 登录Mysql服务端
mysql -u root -p
输入grep的mysqld.log的最后面的字符即是密码
- 更新用户root的密码
set password = password(‘root123’);
alter user ‘root’@‘localhost’ password expire never;
flush privileges;
- 设置用户 root 可以在任意 IP 下被访问
grant all privileges on *.* to root@“%” identified by “root123”;
- 设置用户 root 可以在本地被访问
grant all privileges on *.* to root@“localhost” identified by “root123”;
- 刷新权限使之生效
flush privileges;
- 输入 exit 后用新密码再次登录
exit
mysql -u root -p
输入新密码
五、控制命令:启动、停止、重启、查看状态
- 方式一:
service mysqld start
service mysqld stop
service mysqld restart
service mysqld status
- 方式二:
systemctl start mysqld
service mysqld stop
service mysqld restart
systemctl status mysqld
六、设置 MySQL 的字符集为 UTF-8
-
vim /etc/my.cnf
-
在 [mysqld] 前添加如下代码:
[client] default-character-set=utf8
- 在 [mysqld] 后添加如下代码:
default-storage-engine=INNODB character-set-server=utf8 collation-server=utf8_general_ci
- 重启mysql并登录,查看字符集,6个utf8就算OK
show variables like ‘%character%’;
- 查看指定的数据库中指定数据表的字符集,如查看 mysql 数据库中 servers 表的字符集
show table status from mysql like ‘%servers%’;
- 查看指定数据库中指定表的全部列的字符集,如查看 mysql 数据库中 servers 表的全部的列的字符集
show full columns from servers;
七、忘记密码后重置
service mysqld stop
mysqld_safe --user=root --skip-grant-tables --skip-networking &
mysql -u root
进入Mysql后
为了做好运维面试路上的助攻手,特整理了上百道 【运维技术栈面试题集锦】 ,让你面试不慌心不跳,高薪offer怀里抱!
这次整理的面试题,小到shell、MySQL,大到K8s等云原生技术栈,不仅适合运维新人入行面试需要,还适用于想提升进阶跳槽加薪的运维朋友。
本份面试集锦涵盖了
- 174 道运维工程师面试题
- 128道k8s面试题
- 108道shell脚本面试题
- 200道Linux面试题
- 51道docker面试题
- 35道Jenkis面试题
- 78道MongoDB面试题
- 17道ansible面试题
- 60道dubbo面试题
- 53道kafka面试
- 18道mysql面试题
- 40道nginx面试题
- 77道redis面试题
- 28道zookeeper
总计 1000+ 道面试题, 内容 又全含金量又高
- 174道运维工程师面试题
1、什么是运维?
2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?
3、现在给你三百台服务器,你怎么对他们进行管理?
4、简述raid0 raid1raid5二种工作模式的工作原理及特点
5、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?
6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?
7、Tomcat和Resin有什么区别,工作中你怎么选择?
8、什么是中间件?什么是jdk?
9、讲述一下Tomcat8005、8009、8080三个端口的含义?
10、什么叫CDN?
11、什么叫网站灰度发布?
12、简述DNS进行域名解析的过程?
13、RabbitMQ是什么东西?
14、讲一下Keepalived的工作原理?
15、讲述一下LVS三种模式的工作过程?
16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?
17、如何重置mysql root密码?
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
ql的innodb如何定位锁问题,mysql如何减少主从复制延迟?
17、如何重置mysql root密码?
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!