linux与mysql的关系_linux系统mysql简介

linux系统mysql初始

初级:1.mysql安装

中级:数据库管理员DBA

1) 用户管理

1.用户权限的管理

2.管理可以操作库和表

3.用户名

4.管理来源IP

5.用户的密码

grant select,insert,update on wordpress.* to dev@'172.16.1.%' identifie by 'xxx@123';

2) 数据管理

1.备份数据

2.恢复数据

3.sql语句管理

DDL:CREATE

DCL:GRANT

DML:INSERT

DQL:SELECT

3) 配置管理

1.了解配置文件

2.优化配置

4) 集群管理

1.单机单节点

2.主从

3.读写分离

4.MHA

5) 数据库监控管理

1.进程 ps -ef

2.端口 netstat

3.主从状态

4.主从延时情况

5.sql读写速率

6.慢日志

6)运维层面的监控

1.系统硬件监控

2.服务进程

3.端口监控

4.网络监控

5.业务监控

3.高级:数据库架构师

二、数据库课程体系

[

a77e25674e7af8dc1668d59768067b61.png]

三、DBA职业素养

[

f4880ffd1754ddd6511ccec0dbd12cbe.png]

1.人品

1.不要动不动就删库

2.不要随意甩锅,尽量往别的部门甩

2.严谨

1.每条sql语句都要经过测试

2.删除语句

delete from mysql.user where 1=1;

delete:删除数据

drop:删除表

truncate:清空表

3.细心

1.敲命令要细心

\G ; \g

2.常用的命令,记录,下次执行直接复制

4.心态

1.遇到紧急故障沉着冷静,不要因为慌乱导致更严重的后果

5.熟悉操作系统

6.熟悉业务

7.熟悉行业

8.喜欢数据库

五、MySQL简介

1.什么是数据

数据可以是连续的值,比如声音、图像,称为模拟数据。也可以是离散的,如符号、文字,称为数字数据。

在计算机系统中,数据以二进制信息单元0,1的形式表示。

数据的定义: 数据是指对客观事件进行记录并可以鉴别的符号,是对客观事物的性质、状态以及相互关系等进行记载的物理符号或这些物理符号的组合。它是可识别的、抽象的符号。

2.数据库管理系统种类

1)关系型数据库 DBMS(database management system)

mysql

oracle

sqlserver

mariadb

以多张二维表的方式来存储,又给多张表建立了一定的关系(关系型数据库)

#范式拆表:将一个表拆到不能再拆

2)非关系型数据库

redis

127.0.0.1:6379> set k1 v1#设置值

OK

127.0.0.1:6379> get k1#查看值

"v1"

memcache

mongodb

elasticsearch

非关系型数据库,很多以json格式进行存储数据的

3)关系型数据库和非关系型数据库对比

关系型数据库:

1.强大的查询功能

2.强一致性

3.二级索引

非关系型数据库:

1.灵活

2.高扩展性

3.性能高

4)关系型数据库和非关系型数据库特点对比

关系型数据库(RDBMS)的特点:

1.二维表

2.数据存取是通过SQL(Structured Query Language结构化查询语言)

3.最大特点数据安全性方面强(ACID)

原子性,一致性,隔离性,持久性

非关系型数据库(NoSQL:Not only SQL)的特点:

1.不是否定关系型数据库,而是做关系型数据库的补充。

2.性能高,速度快

5)NoSQL特性总览

1. 不是否定关系型数据库,而是做关系型数据库的补充,现在也有部分替代的趋势mongodb。

2. 关注高性能,高并发,灵活性,忽略和上述无关的功能。

3. 现在也在提升安全性和使用功能。

4. 典型产品:redis(持久化缓存)、MongoDB(最接近关系型数据库的NoSQL)、memcached。

5. 管理不适用SQL管理,而是用一些特殊的API或数据接口。

6)NoSQL的分类、特点、典型产品

1.键值(key value)存储:memcached、redis

2.列存储(column-oriented):HBASE(新浪、360)Cassandra(200台服务器集群)

3.文档数据库(document-oriented):MongoDB(最接近关系型数据库的NoSQL)

4.图形存储(Graph):Neo4j

7)mysql数据库版本

- 1.0

- 5.1

- 5.5

- 5.6

- 5.7

- 8.0

#版本选择的潜规则:

5.6版本:选择GA 6-12 个月,小版本为偶数版

5.7版本:选择GA 6-12 个月,小版本为偶数版,尽量选择5.7.17版本以上

六、mysql安装

1.安装方式

1.二进制安装

2.源码包安装

3.rpm包安装

1.二进制安装

1)上传或者下载包

[root@m01 ~]# rz

#或者

[root@web01 ~]# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.6.46-linux-glibc2.12-x86_64.tar.gz

2)安装依赖

[root@m01 ~]# yum install -y ncurses-devel libaio-devel gcc gcc-c++ glibc cmake autoconf

3)解压包

[root@m01 ~]# tar xf mysql-5.6.46-linux-glibc2.12-x86_64.tar.gz

4)移动目录

[root@m01 ~]# mv mysql-5.6.46-linux-glibc2.12-x86_64 /usr/local/

5)做软连接

[root@m01 ~]# ln -s /usr/local/mysql-5.6.46-linux-glibc2.12-x86_64 /usr/local/mysql

6)创建mysql用户

[root@m01 ~]# useradd mysql -s /sbin/nologin -M

7)拷贝配置文件和启动脚本

[root@m01 support-files]# cp my-default.cnf /etc/my.cnf

cp: overwrite ‘/etc/my.cnf’? y

[root@m01 support-files]# cp mysql.server /etc/init.d/mysqld

8)初识化数据库

[root@m01 ~]# cd /usr/local/mysql/scripts/

[root@m01 scripts]# ./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

--user:指定用户

--basedir: 指定安装目录

--datadir: 指定数据目录

#初始化成功的标志是两个ok

9)启动数据库

[root@m01 scripts]# /etc/init.d/mysqld start

10)配置环境变量

[root@m01 scripts]# vim /etc/profile.d/mysql.sh

export PATH=/usr/local/mysql/bin:$PATH

[root@m01 scripts]# source /etc/profile

11)配置system管理mysql

[root@m01 scripts]# vim /usr/lib/systemd/system/mysqld.service

[Unit]

Description=MySQL Server

Documentation=man:mysqld(8)

Documentation=https://dev.mysql.com/doc/refman/en/using-systemd.html

After=network.target

After=syslog.target

[Install]

WantedBy=multi-user.target

[Service]

User=mysql

Group=mysql

ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf

LimitNOFILE = 5000

[root@m01 scripts]# systemctl daemon-reload

[root@m01 scripts]# systemctl start mysqld

12)确认启动

[root@m01 scripts]# ps -ef | grep mysql

mysql 12886 1 2 03:10 ? 00:00:00 /usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf

root 12921 10636 0 03:11 pts/1 00:00:00 grep --color=auto mysql

[root@m01 scripts]# netstat -lntp

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

tcp 0 0 127.0.0.1:6379 0.0.0.0:* LISTEN 12027/redis-server

tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 6180/rpcbind

tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 7113/sshd

tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 7198/master

tcp6 0 0 :::3306 :::* LISTEN 12886/mysqld

tcp6 0 0 :::111 :::* LISTEN 6180/rpcbind

tcp6 0 0 :::22 :::* LISTEN 7113/sshd

tcp6 0 0 ::1:25 :::* LISTEN 7198/master

[root@m01 scripts]# mysql

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 1

Server version: 5.6.46 MySQL Community Server (GPL)

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值