卸载
yum 安装
1、由于CentOS 的yum源中没有mysql,需要到mysql的官网下载yum repo配置文件。
下载命令:
wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
2、然后进行repo的安装:
rpm -ivh mysql57-community-release-el7-9.noarch.rpm
执行完成后会在/etc/yum.repos.d/目录下生成两个repo文件mysql-community.repo mysql-community-source.repo
3、进入到 /etc/yum.repos.d/目录后再执行以下脚本
a、安装命令:
yum install mysql-server
b、启动msyql:
systemctl start mysqld
c、获取安装时的临时密码(在第一次登录时就是用这个密码):
grep ‘temporary password’ /var/log/mysqld.log
d、倘若没有获取临时密码,则删除原来安装过的mysql残留的数据
rm -rf /var/lib/mysql
e、再启动mysql
systemctl start mysqld
登录
有临时密码
mysql -u root -p
然后输入密码(刚刚获取的临时密码)
无临时密码,跳过登录验证
1、打开配置文件
vim /etc/my.cnf(注:windows下修改的是my.ini)
在文档内搜索mysqld定位到[mysqld]文本段:
/mysqld(在vim编辑状态下直接输入该命令可搜索文本内容)
在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程,如下图所示:

保存文档并退出:
#:wq
接下来我们需要重启MySQL:
修改密码
输入:
mysql
修改:
ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘@abcd123456’;
如果报错,则网上搜索错误解决
常见错误:
8.直接下cmd下输入mysql进入mysql>; 在mysql>下输入 UPDATE mysql.user set password=PASSWORD(‘newpassword’) WHERE User=’root’; 进行密码更改。
在mysql5.7.13这个版本更改密码时出现ERROR 1054 (42S22): Unknown column ‘password’ in ‘field list’错误,原来password字段被改为authentication_string了。第8步出错则走第9步;
9.在mysql>下使用update mysql.user set authentication_string=password(‘root’) where user=’root’ ; (注意单引号为英文状态下的)
开启远程控制
mysql登录方式有两种,一种是本机登录,一种是远程登录。这两种登录方式在mysql数据库的user表中都有体现。
由于我们不可能总是本地登录,因此需要设置远程登陆。但是mysql默认不支持远程登陆,所以需要设置一波。
1. 登录数据库。
2. 切换到mysql数据库。
3. 查看主机和用户对应情况,其实就是查看mysql数据库的user表中的部分信息。
4. 此时,针对远程用户,我们有三种授权方式:
1) 授权法(推荐使用)
授权给所有ip
mysql>GRANT ALL PRIVILEGES ON .* TO ‘root’@’%’ IDENTIFIED BY ‘youpassword’ WITH GRANT OPTION;
mysql>FLUSH PRIVILEGES;
如果这里报错,尝试 FLUSH PRIVILEGES; 然后 在执行上述
- 授权给某ip
mysql>GRANT ALL PRIVILEGES ON . TO ‘root’@’your ip’ IDENTIFIED BY ‘youpassword’ WITH GRANT OPTION;
mysql>FLUSH PRIVILEGES;
2) 改表法(不推荐)
mysql>update user set host = ‘%’ where user = ‘root’;
mysql>FLUSH PRIVILEGES;
此方法不推荐的原因是,它会把数据库表全部改掉,如果你从本地登录时,看到的数据库结构和远程登陆看到的结构不一样,不利于本地修改。非常不推荐这种玩法!!!
3)修改mysql配置文件
找到mysql.cnf
把bind-address = 127.0.0.1 前面加上 #
即 #bind-address = 127.0.0.1
不过,就rpm安装方式来说,我没找到bind-address这一项;如果有这一项的话,将其修改为bind-address=0.0.0.0也可以实现远程登陆,不过要重启mysql服务。
还有一点,就是你要保证防火墙不会挡住mysql监听端口(感觉是废话,但是实际上经常就是防火墙问题o_o)
其他
七、其他配置
1、设置安全选项:
mysql_secure_installation
2、关闭MySQL
systemctl stop mysqld
3、重启MySQL
systemctl restart mysqld
4、查看MySQL运行状态
systemctl status mysqld
5、设置开机启动
systemctl enable mysqld
6、关闭开机启动
systemctl disable mysqld
7、配置默认编码为utf8:
vi /etc/my.cnf #添加 [mysqld] character_set_server=utf8 init_connect=’SET NAMES utf8’
其他默认配置文件路径:
配置文件:/etc/my.cnf 日志文件:/var/log//var/log/mysqld.log 服务启动脚本:/usr/lib/systemd/system/mysqld.service socket文件:/var/run/mysqld/mysqld.pid
8、查看版本
select version();
————————————————
版权声明:本文为CSDN博主「不甘于平凡的溃败」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/wohiusdashi/java/article/details/89358071
