这是一篇关于mysql安装,创建表,插入数据,查询的教程,今天小编就来说说关于mysql数据库基础与实例教程?下面更多详细答案一起来看看吧!
mysql数据库基础与实例教程
这是一篇关于mysql安装,创建表,插入数据,查询的教程
在centos8下面安装mysql:《在CentOS8下安装最新版MySQL》
在本文中也详细讲解了mysql安装,可以不用看那篇文章!先看看你的系统有没有MariaDB:
rpm -qa | grep mariadb
如果有的话卸载之前的安装
rpm -e --nodeps 软件名 //强力删除,对相关依赖的文件也进行强力删除
开始安装mysql
通过 rpm -ivh mysql-community-common-8.0.21-1.el7.x86_64.rpm --nodeps --force 命令安装 common
通过 rpm -ivh mysql-community-libs-8.0.11-1.el7.x86_64.rpm --nodeps --force 命令安装 libs
通过 rpm -ivh mysql-community-client-8.0.11-1.el7.x86_64.rpm --nodeps --force 命令安装 client
通过 rpm -ivh mysql-community-server-8.0.11-1.el7.x86_64.rpm --nodeps --force 命令安装 server
通过 rpm -qa | grep mysql 命令查看 mysql 的安装包
Tab补全安装包名字
初始化mysql
mysqld --initialize //创建数据文件目录和mysql系统数据库 产生随机root密码
chown mysql:mysql /var/lib/mysql -R; // 给/var/lib/mysql目录权限授权
systemctl start mysqld.service; //启动mysql服务
systemctl enable mysqld; //把mysql服务加到开机启动项
cat /var/log/mysqld.log | grep password 命令查看数据库的密码
[root@localhost mysql]# cat /var/log/mysqld.log | grep password
2021-05-19T01:25:54.952497Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: fX)7u)i%tn-g
密码:fX)7u)i%tn-g
mysql -uroot -p 敲回车键进入数据库登陆界面
输入刚刚查到的密码,进行数据库的登陆,复制粘贴就行,MySQL 的登陆密码也是不显示的
如果你想修改mysql随机生成的密码,用这条命令:
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; //(更改密码)
如果报错,输入:flush privileges;
验证密码是否修改成功
通过 exit; 命令退出 MySQL,然后通过新密码再次登陆
mysql -u root -p
输入修改后的密码,登陆成功。
1、查询所有数据库mysql> show databases;
2、创建数据库 schoolmysql> create database school default character set utf8 collate utf8_general_ci;
或者来个简单的:
mysql> create database school;
3、进入school 数据库
mysql> use school;
mysql> select database();
------------
| database() |
------------
| school |
------------
1 row in set (0.00 sec)
mysql> create table table1;
#id 整型 主建 不能为空 自动增长
#name 字符型长度50 不能为空
#age 整型 不能为空 默认值18
mysql> create table table1(
-> id int primary key not null auto_increment,
-> xxmc varchar(50) not null,
-> zy varchar(50) not null,
-> zydm varchar(50) not null,
-> xw varchar(50) not null,
-> nx varchar(50) not null,
-> bz varchar(50) not null);
Query OK, 0 rows affected (0.01 sec)
mysql> show tables;
mysql> desc table1;
------- ------------- ------ ----- --------- ----------------
| Field | Type | Null | Key | Default | Extra |
------- ------------- ------ ----- --------- ----------------
| xh | int | NO | PRI | NULL | auto_increment |
| xxmc | varchar(50) | NO | | NULL | |
| zy | varchar(50) | NO | | NULL | |
| zydm | varchar(50) | NO | | NULL | |
| xw | varchar(50) | NO | | NULL | |
| nx | varchar(50) | NO | | NULL | |
| bz | varchar(50) | NO | | NULL | |
------- ------------- ------ ----- --------- ----------------
7 rows in set (0.00 sec)
两种方法,第一种source命令
第二种直接插入:
INSERT INTO `` (`xh`,`xxmc`,`zy`,`zydm`,`xw`,`nx`,`bz`) VALUES (1,'北京大学','意大利语','050238','文学','四年','');
这里的``要改成表的名字,如这样:
INSERT INTO table1 (`xh`,`xxmc`,`zy`,`zydm`,`xw`,`nx`,`bz`) VALUES (1,'北京大学','意大利语','050238','文学','四年','');
select*from table1; // 列出表中所有数据
select * from table1 where xxmc='北京大学'; //查询字段名xxmc里所有北京大学的数据