1 梗概
本文记录在 Linux 安装 Mysql 的过程
2 官网下载
【下载链接】MySQL :: Download MySQL Community Server (Archived Versions)
由于社区版免费,所以下载社区版
上述选择的就是 RPM 方式的安装。
下载后可使用 tar -zvh ***.tar -C /tardir/test (目标文件夹) 解压就好
3 安装前准备
检查系统是否已经安装了其他版本的 mysql
rpm -qa 查询当前系统中安装的所有软件
rpm -qa | grep mysql 查询当前系统中安装的名称带mysql的软件
rpm -qa | grep mariadb 查询当前系统中安装的名称带mariadb的软件
可以看到 这里安装了 pcp-pmda-mysql-6* 这个貌似是个集群版本的 mysql 这里可以不用管,之前我以为也要删除,其实不用只要出现的不是 mysql-community-* 就不用删除了。
但是 注意 rpm -qa | grep mariadb 查找到的 内容 需要删除。
删除命令:
rpm -e --nodeps mariadb-* (上述查询全称,不然后续在安装 mysql-community-server- 时会报依赖异常)
4 mysql 安装
4.1 tar 解压命令
tar -xvf mysql-****.x86_64.rpm-bundle.tar -C /usr/local/mysql (目标文件夹)
解压后都是 RPM 文件
4.2 rpm 安装
rpm -ivh 包名
i:表示安装(install)
v:表示详细信息(verbose)
h:表示显示进度条(hash)
大体的安装顺序 当然 在安装时候 会出现一些依赖问题,此时需要把对应的 rpm 先安装即可。
rpm -ivh mysql-community-common-*.x86_64.rpm
rpm -ivh mysql-community-libs-*.x86_64.rpm
rpm -ivh mysql-community-devel-*.x86_64.rpm
rpm -ivh mysql-community-libs-compat-*.x86_64.rpm
rpm -ivh mysql-community-client-*.x86_64.rpm
rpm -ivh mysql-community-server-*.x86_64.rpm
强制安装命令
rpm -ivh mysql-community-server-…*.x86_64.rpm --force --nodeps
--force:强制安装
--nodeps:安装时不检查依赖关系
5 配置mysql
这里需要注意,如果系统里装有 anaconda 有时候会默认安装了 mysql 此时系统会默认 anaconda 中的配置,一般是在 anaconda/bin/mysql,我是直接把这个执行文件删除了。此外在 root 中配置 环境变量,让系统默认使用 已安装的 mysql
su 输入密码 切换到 root
vi ~/.bashrc
添加下面的内容
#mysql 8.0.33
export PATH="/usr/bin/mysql:$PATH"
然后 保存后
source ~/.bashrc
【注】如果您的环境变量文件 ~/.bashrc 中配置的有问题,比如把上面的 $PATH 没写上,会发现很多命令用不了,比如 vi ~/.bashrc 也会报异常:“bash:vi:command not found”
1、在命令行中输入:export PATH=/usr/bin:/usr/sbin:/bin:/sbin:/usr/X11R6/bin 这样可以保证命令行命令暂时可以使用。命令执行完之后不要关闭终端,继续下一步;
2、在命令行中输入 vi ~/.bash_profile 进入到环境变量中;
3、仔细检查自己配置的 PATH 属性是否有错误,(可能是字母错误或者标点符号错误),改正后 :wq 报错退出。
4、执行 source ~/.bash_profile 使配置生效即可。
6 启动Mysql
MySQL安装完成之后,会自动注册为系统的服务,服务名为mysqld。现在用systemctl status mysqld命令查看到服务还未启动
用systemctl start mysqld命令使服务启动,再次查看服务已经处于running状态
使用systemctl enable mysqld命令让服务可以开机自启
使用netstat -alptu | grep mysql命令和ps -ef | grep mysql命令查看当前mysql运行情况
netstat -alptu | grep mysql
ps -ef | grep mysql
netstat -alptu | grep mysql 查看当前包含mysql的网络连接
ps -ef | grep mysql 查看当前包含mysql的进程
7 登录Mysql
7.1 查阅临时密码
安装好MySQL之后,MySQL第一次启动时,会自动生成root用户访问密码,并且输出在MySQL的日志文件 /var/log/mysqld.log中。使用cat /var/log/mysqld.log | grep password命令来查阅密码
cat /var/log/mysqld.log | grep password
7.2 登录
获取MySQL临时密码后,使用命令mysql -uroot -p,然后输入密码,登录MySQL
7.3 重设密码
前提是已经登陆上了 mysql 以下均在 mysql 情况下输入
通常来讲 password 需要包含 大小写 特殊字符 就好了 ,不然会报不符合规定。虽然网络上有说可以通过 set global validate_password_policy=LOW; 设置密码为低等级,但是我试了下 似乎不行,所以还是设置了个比较麻烦的密码 可能是版本问题 命令没设置对。
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
记得 需要输入 刷新配置 不然还是老密码。
FLUSH PRIVILEGES;
7.4 设置允许root用户远程登录
use mysql; #进入mysql库
select host,user from user; #查看用户权限表
update user set host = '%' where user = 'root'; #设置允许root用户远程登录(% 代表所有)
FLUSH PRIVILEGES; # 刷新数据库配置
7.5 远程连接
需要开启服务器的 3306 端口,此时可以在本地 通过远程连接软件 ,连接 服务器的 myql
ip 为 服务器ip地址 端口号 3306
firewall-cmd --permanent --add-port=3306/tcp 开放3306端口
firewall-cmd --reload 重新加载防火墙以应用更改firewall-cmd --permanent --remove-port=3306/tcp 关闭3306端口
firewall-cmd --reload 重新加载防火墙以应用更改
【参考】Linux系统rpm安装MySQL详细操作步骤_linux rpm安装mysql-CSDN博客