0
点赞
收藏
分享

微信扫一扫

python项目练习——14.学生管理系统

小时候是个乖乖 04-07 11:00 阅读 2

 

[root@master ~]# cat /etc/my.cnf
[mysqld_safe]

[client]
socket=/data/mysql/mysql.sock

[mysqld]
socket=/data/mysql/mysql.sock
port = 3306
open_files_limit = 8192
innodb_buffer_pool_size = 512M
character-set-server=utf8mb4

#二进制日志
log_bin
server_id=1

#开启半同步
rpl_semi_sync_master_enabled=1  
rpl_semi_sync_master_timeout=1000 #1秒

#开启gtid
gtid-mode=ON
enforce-gtid-consistency=ON
log-slave-updates=on

[mysql]
auto-rehash
prompt=\u@\d \R:\m  mysql>

#解释三者之间的关系

mysqld_safe

mysqld

mysql:是客户端的连接程序

##实验:创建用户-使用-文件类型

##创建(数据库--》linux一切都是文件)文件夹

create database sc

root@(none) 17:31  mysql>create database sc;

Query OK, 1 row affected (0.00 sec)

#使用sc这个数据库

root@(none) 17:32  mysql>use sc

Database changed

#查看表的结构

root@sc 17:35  mysql>desc student_info;

+-------+-------------+------+-----+---------+-------+

| Field | Type        | Null | Key | Default | Extra |

+-------+-------------+------+-----+---------+-------+

| id    | int(11)     | YES  |     | NULL    |       |

| name  | varchar(20) | YES  |     | NULL    |       |

| sex   | char(10)    | YES  |     | NULL    |       |

+-------+-------------+------+-----+---------+-------+

3 rows in set (0.01 sec)

##查看sc库的文件内容

[root@mysql2 sc]# ls

db.opt  student_info.frm  student_info.ibd

db.opt   就是database option 数据库选项  --》作用:告诉我们这个库使用的字符串是什么

[root@sc-mysql sc]# cat db.opt

default-character-set=utf8  默认字符集

default-collation=utf8_general_ci  默认字符集对应的校对规则:  排序的时候使用的

 student_info.frm   --》表结构文件  frame 框架

 student_info.ibd   --》表的数据和索引   innodb data  --》MySQL默认使用的存储引擎是innodb: 将MySQL内存里的数据存放到磁盘,将磁盘里的数据读取到内存。

mysql里的存储引擎:

  innodb --》默认

  myisam

索引:

index  也是数据,是描述数据的数据,告诉我们数据存放的哪里,一本书里的目录

帮助我们可以快速的查询到数据

提升查询的效率 

##查看表的方式:

root@sc 18:36  mysql>desc student_info;

show create table student_info;

root@sc 17:36  mysql>show create table student_info;

存储引擎是捆绑到表上的

 root@sc 18:38  mysql>create table weicanyu(id int,name varchar(10)) engine=myisam;

Query OK, 0 rows affected (0.00 sec) 

[root@mysql2 sc]#   ls

db.opt            student_info.ibd  weicanyu.MYD

student_info.frm  weicanyu.frm      weicanyu.MYI

weicanyu.frm  --》表结构文件  frame 框架

weicanyu.MYD  --》myisam存储引擎存放数据的  data

weicanyu.MYI  --》myisam存储引擎存放索引 index

[root@sc-mysql sc]# yum install psmisc -y

===

socket 是进程是进程之间通信的方式 -->槽

1.文件socket

2.网络socket

进程和进程之间的通信方式:

管道:pipe

命名管道: named pipe

信号:signal   

信号量Semaphor

共享内存Shared Memory

消息队列Message Queue

套接字 Socket

#信号和信号量之间的区别

##文件socket只有本机

##网络socket ,远程连接数据库

root@localhost

root@192.168.77.133

cali@'%'

% 是通配符,代表任意的字符串

root@(none) 16:36  mysql>create user  'cali'@'%' identified by '123456';

Query OK, 0 rows affected (0.01 sec)

root@(none) 16:37  mysql>grant  all on *.* to 'cali'@'%';

grant 是mysql里授权的命令

all 代表授予所有的权限  select insert update delete等

on *.*  第1个* 代表库 第2个*代表表

to 'cali'@'%' 给具体的用户=

root@(none) 16:40  mysql>

[root@sc-mysql ~]# mysql -ucali -p'123456' -h 192.168.77.134

-h hosts

-p password

-u  users

##查看数据库上有哪些人连上去

cali@(none) 20:03  mysql>show processlist;

+----+------+---------------------+-----------+---------+------+----------+------------------+

| Id | User | Host                | db        | Command | Time | State    | Info             |

+----+------+---------------------+-----------+---------+------+----------+------------------+

|  7 | root | localhost           | sc        | Sleep   | 1250 |          | NULL             |

| 11 | cali | 192.168.0.110:36752 | NULL      | Query   |    0 | starting | show processlist |

| 12 | cali | 192.168.0.1:49306   | wangshuai | Sleep   |  109 |          | NULL             |

| 13 | cali | 192.168.0.1:49308   | NULL      | Sleep   |  251 |          | NULL             |

+----+------+---------------------+-----------+---------+------+----------+------------------+

4 rows in set (0.00 sec)

===

如何知道自己的MySQL的版本

1.直接登陆,可以看到

2.使用命令

root@(none) 09:38  mysql>select version();

+-----------+

| version() |

+-----------+

| 5.7.37    |

+-----------+

1 row in set (0.04 sec)

思考: 为什么需要这些系统?(dba)

1.更好管理数据

2.分类

3.方便操作,不易出错

4.效率高

5.对人的经验要求可以降低

6.节约成本

##查看版本的方式--》

1.刚进入系统的时候,2.mysql>select version

cali@(none) 20:05  mysql>select version

    -> ();

+------------+

| version

() |

+------------+

| 5.7.38     |

+------------+

1 row in set (0.00 sec)

举报

相关推荐

0 条评论