前言
为什么会有这个特别篇?因为发现安装了mysql之后,无法使用navicat来进行数据的同步传输,因为环境安装记录一安装的是旧版【Mysql5.6】,而疯子以前的服务器数据库版本为8.0版本。
安装
配置yum仓库
# 更新密钥 rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 # 安装Mysql8.x版本 yum库 rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpm
由于MySQL并不在CentOS的官方仓库中,所以我们通过上述rpm命令:
使用yum安装MySQL
# yum安装Mysql yum -y install mysql-community-server
安装完成后,启动MySQL并配置开机自启动
systemctl start mysqld # 启动 systemctl enable mysqld # 开机自启
MySQL安装完成后,会自动配置为名称叫做:mysqld的服务,可以被systemctl所管理
检查MySQL的运行状态
systemctl status mysqld
配置
获取MySQL的初始密码
# 通过grep命令,在/var/log/mysqld.log文件中,过滤temporary password关键字,得到初始密码 grep 'temporary password' /var/log/mysqld.log
登录MySQL数据库系统
# 执行 mysql -uroot -p # 解释 # -u,登陆的用户,MySQL数据库的管理员用户同Linux一样,是root # -p,表示使用密码登陆 # 执行完毕后输入(粘贴)刚刚得到的初始密码,即可进入MySQL数据库,输入密码的时候密码不会显示出来
修改root密码
切记不要忘了;键
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密码'; -- 密码需要符合:大于8位,有大写字母,有特殊符号,不能是连续的简单语句如123,abc
设置完新密码后可以按 ctrl+d 退出登陆,再用新密码重新登陆来验证一下
允许root远程登录,并设置远程登录密码
默认情况下,root用户是不运行远程登录的,只允许在MySQL所在的Linux服务器登陆MySQL系统
请注意,允许root远程登录会带来安全风险
# 第一次设置root远程登录,并配置远程密码使用如下SQL命令 create user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码!'; -- 密码需要符合:大于8位,有大写字母,有特殊符号,不能是连续的简单语句如123,abc (配置了简单密码除外) # 后续修改密码使用如下SQL命令 ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';
第一个框中填IP地址,但远程登陆IP地址换了,需要重新设置IP,可以用通配符表示所有IP地址
后续修改密码如下:
退出MySQL控制台页面
# 退出命令 exit # 或者通过快捷键退出:ctrl + d
检查端口
MySQL默认绑定了3306端口,可以通过端口占用检查MySQL的网络状态
netstat -anp | grep 3306
至此,MySQL就安装完成并可用了,请妥善保存好MySQL的root密码。