Linux环境---在线安装MYSQL数据库

Linux环境---在线安装MYSQL数据库

一、使用步骤

1.安装环境

Mysql 驱动 8.0 需要 jdk1.8+ 才行。

JDK版本:1.8 参考文档

MYSQL版本:8.0.2

下载链接: https://pan.baidu.com/s/1MwXIilSL6EY3OuS7WtpySA?pwd=g263

操作系统:CentOS

1.1 建立存放软件的目录

注意:此处本人是将需要按照的软件存放在directory目录下,可根据实际情况调整接收路径。

命令如下:

c 复制代码
mkdir directory

如果软件目录已经存在,直接切换到软件目录下

命令如下:

c 复制代码
cd /directory  

注意:命令 ll 是查看directory 有哪些信息

2.安装Mysql

2.1 卸载mariadb相关包

命令如下:

c 复制代码
yum remove mariadb-libs

输入y,继续

2.2 创建用户

命令如下:

c 复制代码
groupadd mysql
useradd -r -g mysql -s /bin/false mysql

2.3 创建mysql的数据目录/根目录(安装目录)

命令如下:

c 复制代码
mkdir /home/mysql_data
mkdir /usr/local/mysql

2.4 解压并创建软链接

命令如下:

c 复制代码
tar -zxvf mysql-8.0.20-el7-x86_64.tar.gz
mv mysql-8.0.20-el7-x86_64/* /usr/local/mysql


2.5 配置数据库信息

命令如下:

c 复制代码
cd /etc
vi /etc/my.cnf

#用vim编辑器来编辑profile文件,在文件末尾添加以下内容:

c 复制代码
[mysqld]
port=3306
basedir=/usr/local/mysql
datadir=/home/mysql_data
max_connections=200
max_connect_errors=10
character-set-server=utf8mb4
default-storage-engine=INNODB
default_authentication_plugin=mysql_native_password
slow_query_log=1
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
wait_timeout=1800
interactive_timeout=1800
general_log=ON
general_log_file=/home/mysql_data/mysql_general.log
log_bin=ON
log-bin=/home/mysql_data/mysql-bin
expire_logs_days=5
max_binlog_size = 512M
sort_buffer_size = 1048576
server-id=1


[client]
port=3306

[mysql]
default-character-set=utf8mb4

(注意:按i为输入键,输入后,按esc退出编辑,再次输入:wq!强制保存)

2.6 设置目录权限

命令如下:

c 复制代码
chown -R mysql.mysql /usr/local/mysql
chown -R mysql.mysql /home/mysql_data 
cd /usr/local/mysql

2.7 初始化MySQL

命令如下:

c 复制代码
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/home/mysql_data

提示

The syntax 'expire-logs-days' is deprecated and will be removed in a future release. Please use binlog_expire_logs_seconds instead.

(语法"expire-logs-days"已弃用,并将在将来的版本中删除。请改用binlog_expire_logs_conds。)

打印出来的是数据库用户名/密码root/e-s:slNqu1_y,密码需保存,记录

命令如下:复制support-files内容到已存在的etc目录下

c 复制代码
cp support-files/mysql.server /etc/init.d/mysql

命令如下:设置软链接

c 复制代码
ln -sf /usr/local/mysql/bin/mysql /usr/bin/mysql

软链接(注意:软链接的path为对应的解压路径,如果路径不同,需要调整命令)

2.8 使用systemctl管理服务

重新加载服务

设置为开机自启

启动

命令如下:

c 复制代码
systemctl daemon-reload
systemctl enable mysql
systemctl start mysql

补充:

systemctl status mysql --查看mysql服务状态

systemctl restart mysql --重启mysql服务

systemctl stop mysql --停止mysql服务

systemctl disable mysql --系统启动时禁止MySQL服务启动

3.使用Mysql

3.1 进入数据库

使用2.7保存的:数据库用户名/密码root/e-s:slNqu1_y

命令如下:

c 复制代码
bin/mysql -u root -p

输入密码e-s:slNqu1_y

3.2 修改root密码

命令如下:

c 复制代码
CREATE USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'test@mysql';

出现如下报错

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

根据提示执行ALTER命令修改本地登录的root账号的密码:

c 复制代码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'test@mysql';

到此数据库root账号本地登录的密码为:test@mysql

根据提示执行ALTER命令修改任意地址登录的root账号的密码:

c 复制代码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'test@mysql';

到此数据库root账号任意地址登录登录的密码为:test@mysql

3.3 创建数据库

命令如下:

c 复制代码
CREATE DATABASE test_manage DEFAULT CHARACTER SET UTF8 COLLATE UTF8_GENERAL_CI;

命令如下:显示所有的数据库

c 复制代码
show databases;

3.4 创建⽤户

@'localhost'(本地访问Only) @'%'(可以外部访问)

命令如下:

c 复制代码
CREATE user 'local_users'@'localhost' IDENTIFIED WITH mysql_native_password BY 'local_users@123456';
CREATE user 'portal_users'@'%' IDENTIFIED WITH mysql_native_password BY 'portal_users@123456';

%,表示任意IP地址都可以登录

localhost,表示仅仅允许本地登录

命令如下:执行此命令,可以看出portal_users任意IP地址都可以登录、local_users仅仅允许本地登录

c 复制代码
use mysql;
select user, host from user;

3.5 授权⽤户权限

授权⽤户CRUD以及创建表的权限

命令如下:

c 复制代码
GRANT CREATE, SELECT, INSERT, UPDATE, DELETE, DROP, REFERENCES, EXECUTE,ALTER ROUTINE ON test_manage.* TO 'portal_users'@'%';
GRANT CREATE, SELECT, INSERT, UPDATE, DELETE, DROP, REFERENCES, EXECUTE,ALTER ROUTINE ON test_manage.* TO 'local_users'@'localhost';

命令如下:

c 复制代码
flush privileges;

退出数据库(exit/quit)

命令如下:

c 复制代码
exit

4.防火墙开放3306端口

命令如下:

c 复制代码
firewall-cmd --add-port=3306/tcp --permanent
firewall-cmd --reload

5.DBeaver远程连接数据库


相关推荐
风哥2号1 小时前
数据库教程FGMT27‑MySQL数据库基础知识与体系架构
数据库·mysql
AlanBruce1 小时前
摩尔信使MThings功能综述与应用使用指南
linux·自动化·plc·mthings·摩尔信使
YangYang9YangYan2 小时前
2026 校招商品分析岗位 JD 拆解,核心指标、工具与面试考点
大数据·数据库·数据分析
西安栈上月明软件科技3 小时前
从业务黑话到本体图谱:OAG本体建模五步法(西安老系统AI化改造实战)
数据库·人工智能·架构
anxiao_m3 小时前
跨云跨机房大数据迁移怎么选?不同场景工具适配指南
数据库·云启快传
风哥2号5 小时前
数据库教程FGMT43‑MySQL性能分析与优化调整
数据库·mysql
随身数智备忘录5 小时前
财务数据分析如何与业务场景结合?财务数据分析如何从数出有据到数出有用?
数据库
陈陈CHENCHEN5 小时前
【Linux】服务器根目录磁盘扩容操作记录
linux·运维·服务器
这个DBA有点耶6 小时前
数据库教程:从零基础到实战的完整学习路径(2026版)
数据库·程序员·代码规范
GeW6 小时前
RHCE快速拿证全攻略:考点拆解+实验强化+时间规划,一次通关
linux