mysql数据库 - HeavyYuan/A-CD-Record-Management-System GitHub Wiki
系统:CentOS Linux release 7.8
mysql server version: 5.7.32 MySQL Community Server (GPL)
- 配置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
- 安装 默认安装最稳定版本:yum install mysql-community-server
-
service mysqld status/start 从日志中获取初始密码:cat /var/log/mysqld.log | grep "A temporary password"
-
连接mysqld mysql -u root -p,然后输入以上密码。
-
mysql在常规使用之前需要修改密码 SET password=PASSWORD('xxxxx');
- 管理命令
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)
- 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引擎 个人对存储引擎的理解是,底层存储数据的方式、特性。 如在本项目中,数据存储在内存、文件、数据库,所用的方式都不同,相当于不同的存储引擎。