1、在/usr/local 下新建mysql
mkdir mysql
2、进入到mysql文件夹中
cd mysql
3、下载mysql,并使用tar xvjf 解压
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz
tar xvJf mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz
4、重命名解压后的文件夹
mv mysql-8.0.21-linux-glibc2.12-x86_64 mysql-8.0
5、在/usr/local/mysql/mysql-8.0 下新建data文件夹,后续会用到
mkdir data
6、创建mysql用户组以及用户和密码
groupadd mysql
useradd -g mysql mysql
7、授权用户
chown -R mysql.mysql /usr/local/mysql/mysql-8.0
8、切换到bin目录下,安装libaio,并初始化基础信息
cd bin
yum install -y libaio
./mysqld --user=mysql --basedir=/usr/local/mysql/mysql-8.0 --datadir=/usr/local/mysql/mysql-8.0/data/ --initialize
9、切记记录下,上一步骤初始化信息后得到临时密码,容易忽略
10、编辑my.cnf文件,打开命令:vi /etc/my.cnf
#插入或者更新以下代码
basedir=/usr/local/mysql/mysql-8.0/
datadir=/usr/local/mysql/mysql-8.0/data/
socket=/tmp/mysql.sock
character-set-server=UTF8MB4
同时禁用my.cnf文件中以下代码,具体如下:
[mysqld]
#datadir=/var/lib/mysql
datadir=/usr/local/mysql/mysql-8.0/data
basedir=/usr/local/mysql/mysql-8.0
#socket=/var/lib/mysql/mysql.sock
socket=/tmp/mysql.sock
skip-grant-tables
character-set-server=UTF8MB4
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
#[mysqld_safe]
#log-error=/var/log/mariadb/mariadb.log
#pid-file=/var/run/mariadb/mariadb.pid
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
11、回到安装mysql目录下/usr/local/mysql/mysql-8.0添加mysqld服务到系统
cp -a ./support-files/mysql.server /etc/init.d/mysql
12、授权以及添加服务
chmod +x /etc/init.d/mysql
chkconfig --add mysql
13、启动服务
service mysql start
如果启动不成功,报如下错误:
需要执行两个步骤:
·1、
14、查看mysql运行状态
service mysql status
15、将mysql命令添加到服务
ln -s /usr/local/mysql/mysql-8.0/bin/mysql /usr/bin
16、登录mysql mysql -uroot -p 密码使用之前第9步随机生成的密码
如果此处忘记记录临时密码,可以通过命令打开my.conf文件:vi /etc/my.conf 加入一行代码:
skip-grant-tables,这样登录时,在输入密码处会跳过验证,直接登录mysql
17、修改root密码,其中“654321”是你自己的密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '654321';
18、执行命令,使得新密码生效
flush privileges;
19、执行命令,使得远程连接数据库生效
update user set host='%' where user='root';
flush privileges;
20、如果你只需要安装mysql,那么到此就结束了!通过命令操作数据库,那么可以继续观看
21、新建一个有字符集与排序的数据库
create database `database_name` charset utf8mb4 collate utf8mb4_0900_ai_ci;
22、补充一点,如果有人连接的时候报:
这个错,可以本机连接一下,然后通过下图中这几个命令看下,是否是只可本机连接:
如果是这样,那么就需要执行如下命令来附其他机器可访问权限:
附上面2个图的代码(登录本机mysql后执行):
use mysql;
select user,host from user;
update user set host = '%' where user = 'root';
select user,host from user;
此处切记2点:
1、数据库名加单引号(该单引号是切换为英文后键盘1、2、3、4前边那个);
2、末尾要要加分号,要不执行不了;
22、查看创建的数据库命令:
show databases;
23、如果有sql文件(如改sql文件在/usrl/ocal下)导入,可执行:
source /usr/local/abctest.sql
24、其他的增删改查命令就和咱们平时使用一样了
25、退出mysql登录
exit