Linux服务器安装软件时,建议安装解压版,将文件安装在自己指定的目录。安装版一般会将软件安装在Linux默认的目录,如/usr/local/,配置文件在/etc/,日志在/logs,安装目录比较分散,特别是不熟悉该软件时,找对应文件可能都很麻烦。一是为了方便管理,包括配置文件,启动,日志等;二是如果想安装多个相同的软件,如想安装两个nginx,使用安装版可能会直接覆盖此前安装的nginx,造成事故。
一、卸载原装的mysql
rpm -qa|grep mariadb
yum remove 上条命令展示的服务名
(ubuntu命令:dpkg -s mariadb;dpkg -r mariadb)
二、创建mysql用户&组
用户账号:cat /etc/group | grep mysql
用户密码:cat /etc/passwd | grep mysql
添加用户组:groupadd mysql
用户授权组:useradd -g mysql mysql
三、解压安装包
压缩包下载地址:https://downloads.mysql.com/archives/community/
版本要求:mysql7>=7.0.35,mysql8>=8.0.26,否则可能会有安全问题。(经某些专业安检公司漏洞检测后建议)
tar -xvf 压缩包mysql.tar.gz(-C 指定目录)
注意解压后目录权限。ll命令查看文件夹,最少是755权重,否则可能无法写入文件造成mysql启动失败。
权重计算:
d:表示文件夹
r:权重4,表示读
w:权重2,表示写
x:权重1,表示可执行
-:权重0,表示无
顺序为rwx(-可替换任何一个权重),三者相加最大为7
四、配置文件、目录
- 创建目录。指定数据,日志等文件存储位置
mkdir 解压后目录/data
mkdir 解压后目录/logs
mkdir 解压后目录/tmp
mkdir 解压后目录/logs/binlog
mkdir 解压后目录/logs/relay
touch 解压后目录/logs/mysql.error.log
touch 解压后目录/logs/slow_query_log.log
chown -R mysql 解压后目录
chgrp -R mysql 解压后目录
- my.cnf配置文件
chown 777 /etc/my.cnf
配置文件下载地址:https://download.csdn.net/download/byteArr/87728770
五、初始化
解压后目录/bin/mysqld --user=mysql --basedir=解压后目录/ --datadir=解压后目录/data/ --initialize
六、配置开机自启
cp 解压目录/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
service mysqld start(查看是否启动成功,若失败,请查看上面配置的错误日志,查看错误原因;如果没有错误原因,可能是用户权限问题,没有写入该文件)
七、配置环境变量
- vi或vim /etc/profile
添加以下内容
# MYSQL
export MYSQL_HOME=解压后目录
export PATH="$PATH:$MYSQL_HOME/bin"
八、修改密码&授权远程登录
关闭mysql服务,修改my.cnf,在[mysqld]下添加一行:skip-grant-tables
启动mysql(命令service mysqld start),命令行执行:mysql,进入mysql服务
修改密码:update mysql.user set authentication_string = PASSWORD('密码') where user='root';
退出后,还原my.cnf,去掉skip-grant-tables。重新服务,使用密码登录
登陆后,要求使用ALTER语句修改root密码:alter user 'root'@'localhost' identified by '密码';刷新权限:flush privileges;
修改后,重新登录,执行语句开启远程登录:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;刷新权限:flush privileges;
开放防火墙mysql端口(或服务器安全组),远程连接测试