1、下载MySQL
MySQL官网:https://downloads.mysql.com/archives/community/。下载Linux版本的MySQL安装包,这里我选择的是64位、8.0.31版本,下载的压缩包名称:mysql-8.0.31-linux-glibc2.12-x86_64.tar.xz。
2、Linux安装MySQL
1、将下载的压缩包,上传到Linux的指定目录并解压
tar -xf mysql-8.0.31-linux-glibc2.12-x86_64.tar.xz
文件夹名称过长,文件夹重命名为mysql。
2、添加mysql用户及用户组
groupadd mysql && useradd -r -g mysql mysql
查看mysql用户及用户组是否添加成功,有显示mysql:mysql代表成功。
groups mysql
3、创建mysql的数据目录并赋予权限
mkdir -p /usr/local/develop/data/mysql chown mysql:mysql -R /usr/local/develop/data/mysql
4、调整配置文件
vi /etc/my.cnf
如果没有就此配置文件,就新建配置配置文件my.cnf。配置文件调整如下:
bind-address=0.0.0.0 port=3306 user=mysql basedir=/usr/local/develop/mysql datadir=/usr/local/develop/data/mysql socket=/var/lib/mysql/mysql.sock character_set_server=utf8mb4 explicit_defaults_for_timestamp=true # 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 log-error=/usr/local/develop/data/mysql/mysql-err.log pid-file=/usr/local/develop/data/mysql/mysql.pid # # include all files from the config directory # !includedir /etc/my.cnf.d
配置文件介绍如下:
5、初始化MySQL
进入到mysql解压目录的bin下
cd /usr/local/develop/mysql/bin
初始化mysql
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/develop/mysql --datadir=/usr/local/develop/data/mysql/ --user=mysql --initialize
执行初始化报错:error while loading shared libraries: libaio.so.1
原因:缺少libaio.so.1的依赖库,需进行安装,执行如下安装命令:
yum install -y libaio
出现如下提示表示安装完成。
再次执行mysql的初始化命令,出现如下提示代表初始化完成。
注意:在初始化完成后,会为root生成临时的登录密码 - 如上图的 ==> A temporary password is generated for root@localhost: jKd)C,hu?6i9, 密码为 jKd)C,hu?6i9,需要记住后面登录时需要用到。
6、mysql的启动与关闭
6.1、启动msyql
复制mysql的启动命令
cp /usr/local/develop/mysql/support-files/mysql.server /etc/init.d/mysql
启动mysql
service mysql start
执行出现如下错误:
调整配置文件,注释socket。
再次启动mysql,出现如下提示,表示启动成功。
6.2、关闭mysql
执行如下命令,关闭mysql服务。service mysql stop
关闭服务结果如下:
7、登录mysql
此处需要用到上面初始化MySQL生成的临时密码:jKd)C,hu?6i9。
MySQL服务已经启动,执行登录命令登录,发现无法找到mysql命令。因为Linux系统会在/usr/bin下面查找mysql命令,而当前的mysql命令在/usr/local/develop/mysql/bin目录下,所以执行mysql命令无法找到。
建立软连接
ln -s /usr/local/develop/mysql/bin/mysql /usr/bin
再次访问mysql数据库,出现如下界面表示已登录成功。
8、修改密码
用临时密码登录到mysql数据库,无法访问数据库databases,需要先修改密码。
执行如下命令修改密码:
alter user 'root'@'localhost' identified by 'root'; #刷新 FLUSH PRIVILEGES;
出现如下提示表示密码修改完成。
9、数据库工具连接
数据库工具连接Linux服务上的mysql,出现如下问题,外部不允许访问安装在Linux的数据库。
调整mysql数据库中的user表的外部访问规则:
show databases; # 选择使用mysql数据库 use mysql # root可以由任何host访问 update user set host = '%' where user = 'root'; # 刷新权限 FLUSH PRIVILEGES;
操作详情如下:
再次连接数据库:
10、忘记密码
如果忘记mysql的密码,需要开启免密登录
1、调整/etc/my.cnf配置文件
在【mysqld】下添加 skip-grant-tables,保存退出。
skip-grant-tables
2、重启mysql服务,使数据生效
service mysql restart
3、免密登录
mysql -u root -p
修改密码按照步骤8操作,密码修改完成后,记得去掉/etc/my.cnf配置文件中的。
标签:develop,配置文件,安装,Linux,usr,mysql,MySQL,local From: https://www.cnblogs.com/RunningSnails/p/17314488.html