MariaDB 是一个采用 Maria 存储引擎的MySQL分支版本,是由原来 MySQL 的作者Michael Widenius创办的公司所开发的免费开源的数据库服务器。
dnf search mariadb
dnf install mariadb-server.x86_64 -y
systemctl enable --now mariadb.service
ss -antlupe |grep mysql
systemctl status mariadb.service
vim /etc/my.cnf.d/mariadb-server.cnf
systemctl restart mariadb.service
ss -antlupe |grep mysql
mysql_secure_installation
(1) mysql -uroot -p
:指定用户,然后根据提示输入用户的密码
(2)mysql -uroot -pwestos
: -u:用户,-p:密码
命令 | 功能 |
---|---|
show databases; | 显示库的名称 |
use username; | 进入username的库 |
show tables; | 显示库中的表 |
select * from tablename; | 查询tablename表中的所有数据 |
select User from tablename; | 查询tablename表中的User字段的数据 |
命令 | 功能 |
---|---|
create database linux; | 新建库 |
use linux; | 进入linux库 |
create table student(name varchar(12) not null, passwd varchar(20) not null); | 新建表 |
desc linux; | 显示表结构 |
use linux
create table student(name varchar(12) not null,passwd varchar(20) not null);
desc linux;
insert into student values('hello','123');
insert into student values('lim','123'),('tom','234');
select * from linux;
flush privileges
,alter table linux rename westos;
alter table westos add age varchar(3);
alter table westos add class varchar(16) after name;
alter table westos drop class;
update westos set passwd='666' where name='tom';
delete from westos where name='coco';
delete from westos where name='tom' or passwd='123';
drop table westos;
drop database linux;
有root用户的原始密码时,可以通过下面的命令直接修改数据库的密码:mysqladmin -uroot -pwestos password root
如果忘记数据库的原始密码,可以通过下面的步骤破解数据库的密码
(1)登陆数据库
systemctl stop mariadb.service
systemctl status mariadb.service
mysqld_safe --skip-grant-tables &
(2)进入数据库后修改密码
update mysql.user set Password=password('westos') where User='root';
update mysql.user set authentication_string=password('westos') where User='root';
查看mysql的所有进程: ps -aux | grep mysql
结束mysql的所有进程:kill -9 34536 34636
注意:
一定要确保musql的所有进程结束,否则重启数据库后,mysql可以直接登陆,不需要用户和密码
(4)验证密码是否更改成功
systemctl restart mariadb.service
mysql -uroot -pwestos
(1)创建用户只能用localhost登陆
create user linux@'localhost' identified by 'linux';
(2)通过网络或localhost登陆
grant 权限 on 数据库名.数据表 to 用户名@可登录地址;
grant insert,select on mysql.* to linux@localhost; ##将 insert,select的权限 赋予linux@localhost
show grants for 用户名@可登录地址;
show grants for linux@localhost;
(3)收回权限:revoke 权限 on 数据库名.数据表 用户名@可登录地址;
revoke select on mysql.* from linux@localhost ##收回 linux@localhost的select权限
收回mysql.*的用户授权:evoke select on mysql.*from lee@localhost;
查看权限:show grants for lee@localhost;
drop user linux@localhost;
flush privileges;
(1)备份所有的数据库:mysqldump -uroot -pwestos --all-database
(2)备份所有的数据库,不包括数据
mysqldump -uroot -pwestos --all-database --no-data
(1)实验环境:
mysql -uroot -pwestos -e "create database linux;"
mysqldump -uroot -pwestos linux >/mnt/linux.sql
mysql -uroot -pwestos -e "drop database linux;"
(2)恢复备份数据库的两种方式
创建数据库:mysql -uroot -pwestos -e "create database linux;"
将备份的数据导入linux库中:mysql -uroot -pwestos linux < /mnt/linux.sql
查看linux库中student表的内容:
mysql -uroot -pwestos -e "select * from linux.student;"
mysql -uroot -pwestos < /mnt/linux.sql
/mnt/linux.sql
文件中没有创建linux库和使用这个库,编辑/mnt/linux.sql
文件,添加创建库linux和进入linux库的命令:phpMyAdmin 是使用最广泛的MySQL图形化管理工具,是一款使用PHP 开发的基于B/S模式的 MySQL 客户端软件,该工具是基于 Web 跨平台的管理程序,并且支持多语言。
phpMyAdmin 为Web 开发人员提供了类似 Access,SQL Server 的图形化数据库操作界面,通过该管理工具可以对 MySQL 进行各种操作,如何创建数据库,数据表和生成 MySQL 数据库脚本文件等。
(1)开启httpd服务:systemctl start httpd
(2)关闭防火墙: systemctl stop firewalld
(3)安装软件:dnf install php php-mysqlnd.x86_64 -y
(4)官网下载安装包:phpMyAdmin-3.4.0-all-languages.tar.bz2
(5)将安装包解压到/var/www/html/目录下:tar jxf phpMyAdmin-3.4.0-all-languages.tar.bz2 -C /var/www/html/
(6)重命名: mv phpMyAdmin-3.4.0-all-languages/ mysqladmin
(7)进入到/var/www/html/mysqladmin目录中复制模板文件:cp config.sample.inc.php config.inc.php
(8)重启httpd服务:systemctl start httpd
(9)输入网址:http://172.25.254.10/mysqladmin/
, 查看软件安装成功的界面
(1)输入账号密码登陆
(2)选择语言