MySQL知识笔记——初级基础(实施工程师和DBA工作笔记)

老生长谈,MySQL具有开源、支持多语言、性能好、安全性高的特点,广受业界欢迎。

在数据爆炸式增长的年代,掌握一种数据库能够更好的提升自己的业务能力(实施工程师)。

此系列将会记录我学习和进阶SQL路上的知识(实施工程师),对未来复盘有很大的帮助,希望也能够给你们带来好处。

MySQL知识笔记

一、安装MySQL(Linux)

安装MySQL推荐官网的GA稳定版,以避免不必要的bug出现。系统版本:CentOS 7.1,在安装前我们必须做一些Linux的设置工作确保数据库稳定高效运行。

  • 通过设置swappiness来平衡数据库对swap分区的使用,取值范围为swap(0,100)
  • 0 表示最大限度地使用物理内存,可能会导致内存溢出触发OOM kill
  • 100 表示尽可能使用swap分区,这样会导致数据库的性能降低
  • 建议:开启swap分区,设置swappiness ≤ 10
bash 复制代码
# 临时设置
sysctl -w vm.swappiness=1 # 永久设置
echo vm.swappiness = 0 >> /etc/sysctl.conf
# 查看当前swappiness的值的大小
cat /proc/sys/vm/swappiness

1.1、检测系统是否自带MySQL

为确保不对公司或者客户数据造成损失,同时也防止误操作。

bash 复制代码
#查看是否已安装其他版本的MySQL
rpm -qa | grep mysql
#普通卸载
rpm -qa | grep mysql | xargs rpm -e
#普通卸载报错,说明存在依赖,选择强制卸载
rpm -qa | grep mysql | xargs rpm -e --nodeps

1.2、解压

bash 复制代码
tar xf mysql-8.0.18-1.e17.x86_64.rpm-bundle.tar

ls -l

1.3、创建用户

bash 复制代码
groupadd mysql

useradd -g mysql mysql

1.4、创建数据目录

bash 复制代码
mkdir -p /data/mysql

chown mysql:mysql /data/mysql

1.5、安装RPM依赖包

bash 复制代码
yum -y install wget cmake gcc gcc-c++ numactl autoconf ncurses ncurses-devel libaio-devel openssl openssl-devel perl-devel perl-JSON.noarch
#必要安装(注意顺序)
rpm -ivh mysql-community-common-8.0.18-1.e17.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.18-1.e17.x86_64.rpm
rpm -ivh mysql-community-client-8.0.18-1.e17.x86_64.rpm
rpm -ivh mysql-community-server-8.0.18-1.e17.x86_64.rpm

1.6、创建配置文件

bash 复制代码
cat > /etc/my.cnf <<EOF
[client]
port=3306
socket=/tmp/mysql.sock

[mysqld]
server-id=1
prot=3306
user=mysql
max_connections=500
socket=/tmp/mysql/sock
datadir=/data/mysql
pid-file=/data/mysql/mysql.pid
log-error=/data/mysql/mysql-error.log
slow_query-log_file=/data/mysql/mysql-slow.log
EOF

1.7、初始化

bash 复制代码
#初始化完毕后,密码为空
mysqld --defaults-file=/etc/my.cnf --initialize-insecure

ls -l /data/mysql/

1.8、启动和停止MySQL

bash 复制代码
#启动
systemctl mysqld.server
#停止
systemctl stop mysqld.service
#查看MySQL状态
systemctl status mysqld.service

1.9、设置开机自启

bash 复制代码
systemctl enable mysqld.service

2、MySQL的简单使用

上面详细介绍了MySQL本地RPM包安装的过程,接下来介绍的简单使用。

2.1、连接数据库

bash 复制代码
mysql -h 127.0.0.1 -uroot -p
  • -h地址,默认值为localhost
  • -u用户,默认为当前系统用户
  • -p密码

2.2、创建和使用数据库

bash 复制代码
#创建test数据库
create database test;
#使用test数据库
use test

2.3、增、删、改、查

相信大家参加或者准备参加工作都已经掌握基本的CRUD操作语句了,这里就不过多赘述了。

这里放一张有关连接(JOIN)的图,对我帮助非常大,希望也对你们有帮助。

相关推荐
w***42431 分钟前
【MySQL】复合查询
数据库·mysql
q***01771 小时前
【MySQL】表的基本操作
数据库·mysql·oracle
budingxiaomoli1 小时前
存储过程和触发器
数据库
q***12531 小时前
PostgreSQL_安装部署
数据库·postgresql
q***48252 小时前
mysql用户名怎么看
数据库·mysql
Dream Algorithm2 小时前
价格在走盘整,但是头寸持仓量增加说明什么
笔记
夏日玲子2 小时前
【Redis】Redis常用命令合集
数据库·redis·缓存
r***12382 小时前
若依微服务中配置 MySQL + DM 多数据源
android·mysql·微服务
万邦科技Lafite2 小时前
1688图片搜索商品API接口(item_search_img)使用指南
java·前端·数据库·开放api·电商开放平台
自在极意功。2 小时前
SQL查询语句深度解析:从基础到进阶,写出高效优雅的SQL!
数据库·sql