在Linux中优雅的安装MYSQL
1.首先我们需要准备一个Linux环境,和一个MySql的安装包(本次采用的mysql安装包版本为:8.0.27)
2.把文件放在linux下的/usr/local目录下
3.对文件进行解压
3.1:tar -xvf mysql-8.0.27-linux-glibc2.12-x86_64.tar.xz --解压压缩包
3.2:mv mysql-8.0.27-linux-glibc2.12-x86_64 mysql-8.0.27 --解压完成以后进行文件的重命名
4.创建用户组以及用户和密码
4.1: groupadd mysql
4.2: useradd -g mysql mysql
5.授权用户 (如:下列配置my.cnf 时指定的目录都需给mysql 用户授权)
5.1:chown -R mysql.mysql /usr/local/mysql-8.0.27/
6.在/usr/local/mysql-8.0.27/下 创建 data 数据存储目录 /usr/local/mysql-8.0.27/data
6.1:cd mysql-8.0.27/
6.2:mkdir data
7.在/usr/local/mysql-8.0.27/bin下执行
7.1:./mysqld --user=mysql --basedir=/usr/local/mysql-8.0.27 --datadir=/usr/local/mysql-8.0.27/data/ --initialize --lower-case-table-names=1
重点:执行完这句话会在最后一句话,显示得是你得默认密码请先记住
8.添加mysqld服务到系统 授权以及添加服务
[root@instance-nae4xncg mysql-8.0.27]# cp -a ./support-files/mysql.server /etc/init.d/mysql
[root@instance-nae4xncg mysql-8.0.27]# chmod +x /etc/init.d/mysql
[root@instance-nae4xncg mysql-8.0.27]# chkconfig --add mysql
//设置data数据访问权限
[root@instance-nae4xncg mysql-8.0.27]# chown -R mysql:mysql /usr/local/mysql-8.0.27/data/
//建立服务同步连接
[root@instance-nae4xncg mysql-8.0.27]# ln -s /usr/local/mysql-8.0.27/bin/mysql /usr/bin
[root@instance-nae4xncg mysql-8.0.27]# chmod +x /etc/init.d/mysql
[root@instance-nae4xncg mysql-8.0.27]# chkconfig --add mysql
//设置data数据访问权限
[root@instance-nae4xncg mysql-8.0.27]# chown -R mysql:mysql /usr/local/mysql-8.0.27/data/
//建立服务同步连接
[root@instance-nae4xncg mysql-8.0.27]# ln -s /usr/local/mysql-8.0.27/bin/mysql /usr/bin
9.新建文件 /etc/my.cnf (配置文件,直接复制就可以)---这一步主要在配置mysql所需要的配置信息文件
9.1:vi /etc/my.cnf
9.2:内容-如下
[mysqld]
#设置mysql的安装目录
basedir=/usr/local/mysql-8.0.27/
#设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql-8.0.27/data
# 设置客户端默认字符集
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 设置是否区分大小写(初始化后此参数在这里也必须存在)
lower_case_table_names=1
#设置mysql的安装目录
basedir=/usr/local/mysql-8.0.27/
#设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql-8.0.27/data
# 设置客户端默认字符集
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 设置是否区分大小写(初始化后此参数在这里也必须存在)
lower_case_table_names=1
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
#注释mysqld_safe 下的所有配置 系统会输出到 datadir目录下
#[mysqld_safe]
#log-error=/var/log/mysqld.log
#pid-file=/var/run/mysqld/mysqld.pid
default_authentication_plugin=mysql_native_password
#注释mysqld_safe 下的所有配置 系统会输出到 datadir目录下
#[mysqld_safe]
#log-error=/var/log/mysqld.log
#pid-file=/var/run/mysqld/mysqld.pid
10.启动测试
10.1:service mysql start
10.2:如果你的这一步出现报错得情况下就执行下这一步,然后再从新得执行启动命令:systemctl daemon-reload
11.启动成功之后, 登录mysql 并修改密码
11.1:#进入mysql 控台 mysql mysql -uroot -p
11.2:#修改密码 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
11.3:#刷新权限 flush privileges;
11.2:#修改密码 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
11.3:#刷新权限 flush privileges;
12.配置外网连接授权
12.1#选择mysql数据库 use mysql;
12.2:#修改root 用户的连接地址现在 localhost 为本机 也可指定固定ip 此处 % 开启所有ip访问 update user set host='%' where user='root';
12.3:#刷新权限 flush privileges;
12.2:#修改root 用户的连接地址现在 localhost 为本机 也可指定固定ip 此处 % 开启所有ip访问 update user set host='%' where user='root';
12.3:#刷新权限 flush privileges;
到这里就安装完成了,如果在上面步骤中出现其他问题请参考原文档:linux下mysql8.0.27安装 - 知乎 (zhihu.com)