mysql数据库 - HeavyYuan/A-CD-Record-Management-System GitHub Wiki

软件安装

系统:CentOS Linux release 7.8

mysql server version: 5.7.32 MySQL Community Server (GPL)

  1. 配置yum源 安装源 rpm -ivh http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

查看激活的mysql版本 yum repolist all | grep mysql , 行末尾是enabled

具体安装方法查看帖子:https://cloud.tencent.com/developer/article/1441098

  1. 安装 默认安装最稳定版本:yum install mysql-community-server

软件初始化

  1. service mysqld status/start 从日志中获取初始密码:cat /var/log/mysqld.log | grep "A temporary password"

  2. 连接mysqld mysql -u root -p,然后输入以上密码。

  3. mysql在常规使用之前需要修改密码 SET password=PASSWORD('xxxxx');

基本使用

  1. 管理命令
1) mysql -u root -p foo   以用户名root、提示输入密码、默认使用数据库foo来启动控制台的命令

2)将命令整合到文件中(sqlcommands.sql),然后非交互式的执行;mysql -u root -p < sqlcommands.sql

3) mysqladmin  快速进行MYSQL数据库管理的主要工具

4) mysqldump   以SQL命令集的形式将部分或整个数据库导出到一个单独文件中,该文件也可以重新倒入MySQL或其他SQL RDBMS。
   mysqldump -u root -p mydb > mydb.dump

5) mysqlimport 用于批量将数据导入到一个表中。

6) mysqlshow   display database, table, and column information(man page)  

  1. SQL语句
1) grant命令
赋予某个用户某些权限,如果用户不存在就创建该用户并赋予权限
grant <privilege> on <object> to <user> [identified by user-password] [with grant option];
GRANT ALL ON *.* TO rick@localhost IDENTIFIED BY 'password';
*.* 表示每个数据库中的每张表(databasename.tablename)

2)revoke命令
删除用户权限
revoke <a_privilege> on <an_object> from <a_user>
REVOKE INSERT ON foo.* FROM rick@localhost;
REVOKE ALL ON *.* FROM rick@localhost;

删除用户时,先删除他们的权限。

3)show命令
show database;   显示数据库
show tables;     显示当前数据库的表
show engine;     显示引擎信息

4)status命令
查看mysql相关信息

5)数据库操作
CREATE DATABASE rick;                   创建rick数据库
CREATE TABLE <table_name>(              
column type [NULL | NOT NULL] [AUTO_INCREMENT] [PRIMARY KEY]
[,...]
[,PRIMARY KEY( column [,...])]
)
eg:
CREATE TABLE children(
child INTEGER AUTO_INCREMENT NOT NULL PRIMARY KEY,
fname VARCHAR(30),
age  INTEGER
);


USE rick;                               使用rick
DELETE from rick where user = 'boo';    删除rick中user列boo的entry

其他

存储引擎:常见的是InnoDB和MyISAM,还有memory引擎 个人对存储引擎的理解是,底层存储数据的方式、特性。 如在本项目中,数据存储在内存、文件、数据库,所用的方式都不同,相当于不同的存储引擎。

⚠️ **GitHub.com Fallback** ⚠️