1、下载MySQL
官网:https://dev.mysql.com/downloads/mysql/5.7.html
可以不需要注册直接下载
2、解压安装
1、把压缩包放在在/usr/local目录下。
2、解压MySQL安装包
tar -zxvf mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz
3、查看,根据个人习惯可以改名字
mv mysql-5.7.37-linux-glibc2.12-x86_64 mysql-5.7.37
4、创建MySQL用户组和用户
groupadd mysql
useradd -r -g mysql mysql
5、创建数据目录并赋予权限(需要注意的是这里的data/mysql是在根目录下创建,否则不能初始化)。
mkdir -p /data/mysql #创建目录
chown mysql:mysql -R /data/mysql #赋予权限
6、配置my.cnf
vim /etc/my.cnf
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
innodb_file_per_table=1
lower_case_table_names=1
symbolic-links=0
explicit_defaults_for_timestamp=true
// 这里也要修改
[mysqld_safe]
log-error=/data/mysql/mysql.log
pid-fi=/data/mysql/mysql.pid
lower_case_table_names
:是否区分大小写,1表示存储时表名为小写,操作时不区分大小写;0表示区分大小写;不能动态设置,修改 后,必须重启才能生效:
character_set_server
:设置数据库默认字符集,如果不设置默认为latin1
innodb_file_per_table
:是否将每个表的数据单独存储,1表示单独存储;0表示关闭独立表空间,可以通过查看数据目录,查看文件结构的 区别;
7、初始化数据库
进入mysql的bin目录下
cd /usr/local/mysql/bin/
在bin下初始化
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize
8、查看密码
cat /data/mysql/mysql.err
9、先将mysql.server放置到/etc/init.d/mysql中
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
10、 启动mysql
service mysql start // 启动
ps -ef|grep mysql // 查看
启动成功!!!
11、修改root的密码
首先要切换到mysql的bin目录下
cd /usr/local/mysql/bin
首先登录mysql,用前面那个随机生成的密码。
./mysql -u root -p
修改密码并刷新权限
SET PASSWORD = PASSWORD('123456');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;
此时只能在Linux客户端连接没有mysql,可视化工具还不能连接。
要在登陆MySQL后执行这些命令:
use mysql // 访问mysql库
update user set host = '%' where user = 'root'; // 使root能再任何host访问
FLUSH PRIVILEGES; // 刷新
最后如果不希望每次进入到MySQL的bin目录下启动,可以
ln -s /usr/local/mysql/bin/mysql /usr/bin
service mysql start // 启动MySQL
service mysql restart // 重启
service mysql stop // 停止MySQL
2、卸载MySQL
1、先验证是否安装mysql
rpm -qa | grep -i mysql
2、查看mysql运行状态
service mysql status
3、查看mysql的文件夹
find / -name mysql
4、卸载并删除MySQL安装的组键服务
rpm -ev mysql-community-common-5.6.44-2.el7.x86_64
rpm -ev mysql-community-release-el7-5.noarch
rpm -ev mysql-community-client-5.6.44-2.el7.x86_64
rpm -ev mysql-community-server-5.6.44-2.el7.x86_64
rpm -ev mysql-community-libs-5.6.44-2.el7.x86_64
5、删除系统中MySQL的所有文件夹
rm -rf /etc/selinux/targeted/active/modules/100/mysql
rm -rf /var/lib/mysql
rm -rf /var/lib/mysql/mysql
rm -rf /usr/share/mysql
6、最后验证MySQL是否删除完成
rpm -qa | grep -i mysql
如果为空,没有内容,则删除成功。