欢迎投稿

今日深度:

数据库mariadb的使用,数据库mariadb使用

数据库mariadb的使用,数据库mariadb使用


一 安装mysql
MySQL是一个关系型数据库管理系统,将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性
1)yum search mariadb
寻找与mariadb有关的软件包

yum install mariadb-server.x86_64 -y

安装mariadb的server软件
2) 启动mariadb服务

systemctl start mariadb
systemctl enable mariadb

3) mariadb监听的端口

netstat -antlpe | grep mysql
ss -antlpe | grep mysql


4) 只允许本地连接,阻断所有来自网络的连接

vim /etc/my.cnf

写入:skip-networking=1
并且重启服务:systemctl restart mariadb
二 mariadb的初始化
1) 设置mysql的登陆密码

mysql_secure_installation


设置新的登陆密码

mysql -uroot -pwestos


检验新密码是否登陆成功
2) mysql基本操作语句
1>

show databases;


显示数据库,类似于目录,里面包含多个表
2>

use mysql;


进入名称为mysql的数据库
3>

show tables;


显示该数据库中的表
4>

desc user;


显示表的结构
5>

select * from user;


显示user表中的内容
6>

select Host,User,Password from user;


显示表中某几列
7>

create database westos;


创建一数据库名称为westos
8>

create table westosuser(
    -> username varchar(10) not null,
    -> passwd varchar(6) not null
    -> );
![这里写图片描述](https://img-blog.csdn.net/20180905113324871?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjY2ODEyMw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
创建一表

9>

insert into westosuser values ('user1','123');


向表中插入内容
10>

insert into westosuser(passwd,username) values("456","user2");


按照指定顺序向表中插入数据
11>

update westosuser set passwd='456' where username="user1";


更新表中的内容
12>

alter table westosuser add sex varchar(3);


添加sex列到westosuser表中
13>

delete from westosuser where username="user1";


删除表中用户名为user1的记录
14>

drop table westosuser;


删除表
15>

drop database westos;


删除数据库
三 用户和访问权限的操作
1)create user hello@localhost identified by 'hello';

创建用户hello,可在本机登陆,密码为hello
2)

create user hello@'%' identified by 'hello';


创建用户hello,可在远程登陆,密码为hello
3)

create database mariadb;


创建一数据库mariadb,对普通用户进行
4)

grant all on mariadb.* to hello@localhost;


给hello@localhost用户授权,如果为all,授权所有权限
一般有这些权限:insert,update,delete,select,create
5)

flush privileges;


刷新,重载授权表
6)

show grants for hello@localhost;


查看用户授权
7)

revoke delete,update on mariadb.* from hello@localhost;


删除指定用户授权
8)

drop user hello@localhost;


删除用户
四 忘记mysql用户密码时,该怎么找回
1) 关闭mariadb服务

systemctl stop mariadb


2) 跳过授权表

mysqld_safe --skip-grant-table &


注意:这里要用超级用户
3) 修改root密码

mysql

update mysql.user set Password=password('redhat') where User='root';


4) 关闭跳过授权表的进程,启动mariadb服务,使用新密码即可
1>

ps aux | grep mysql


2>

kill -9 pid


3>

systemctl start mariadb


4>

mysql -uroot -predhat


这时再用mysql是进不去了
五 mysql的备份与恢复
1) 备份
1>

mysqldump -uroot -predhat  mariadb >mariadb.dump


将内容备份到当前目录的mariadb.dump文件中
2>

mysqldump -uroot -predhat --no-data mariadb > `date +%Y_%m_%
d`_mariadb.dump


也可以设置显示其日期
3>

mysqldump -uroot -pwestos --all-databases >mariadb.dump


也可以选择备份库的所有内容
2)恢复
1>

mysqladmin -uroot -predhat create hello

建立数据库hello
2>

mysql -uroot -predhat  mariadb< mariadb.dump

将数据恢复到hello库中
六 mariadb的中文编码问题
当使用mysql数据库时,当然会使用中文存储一些数据,但是默认情况下存储的中文是 ???,表示看不懂
因此如何修改数据库中的编码格式设置呢?
1) 数据库编码格式的查看
首先登陆到数据库里面:mysql -uroot -predhat
查看mysql的编码格式:show variables like 'character_set_%';

2) 临时修改数据库的编码格式
修改除了character_set_filesystem之外的其他变量的编码格式为utf8

set character_set_server='utf8';
set character_set_database = 'utf8';


但是,当重启服务后,刚才的设置就会直接失效
3) 永久修改数据库的编码格式
配置mysql的配置文件
首先我们切换到配置文件 /etc/my.cnf.d 目录中,设置编码格式:

cd /etc/my.cnf.d 


第一个文件修改: client.cnf 这里需要超级用户来完成,普通用户只有可读的权限

vim client.cnf


第8行添加 default-character-set=utf8
第二个文件修改: server.cnf

vim server.cnf


第13行添加: character-set-server=utf8
但是发现设置完后,发现重启mariadb服务后,character_set_database并没有进行修改,因此,直接设置character_set_database编码格式为utf8

set character_set_database = 'utf8';


这样就解决了中文编码的问题了
七 中文编码的检测
创建员工表(employee),要求包含字段(工号、姓名、年龄、性别、薪资、部门)。
要求命令行完成以下操作:(禁止使用图形工具软件)
1)添加三条员工信息
分别是:
1:张三,18 , 男,5000 , IT部门
2:李四,20,男,6000,市场部
3:小红,28,女,10000,人事部
2)删除关于“张三“的记录
3)将“李四“的性别改为”女”
4)查询并显示员工表中所有的员工信息

MariaDB [(none)]> create database employee;
MariaDB [(none)]> use employee;
MariaDB [employee]> create table employinfo(工号 int(5),姓名 varchar(30),年龄 int(5),性别 varchar(10),薪资 int(10),部门 varchar(30));
MariaDB [employee]> insert into employinfo values(1,'张三',18,'男',5000,'IT部门');
MariaDB [employee]> insert into employinfo values(2,'李四',20,'男',6000,'市场部');
MariaDB [employee]> insert into employinfo values(3,'小红',28,'女',10000,'人事部');
MariaDB [employee]> delete from employinfo where 姓名='张三';
MariaDB [employee]> update employinfo set 性别='女' where 姓名='李四';
MariaDB [employee]> select * from employinfo;


首先建立数据库employee

建立数据库中表employinfo包含的信息:工号、姓名、年龄、性别、薪资、部门

添加三个人的信息

删除关于张三的记录

将李四的性别改为女,并显示员工表中所有的员工信息

www.htsjk.Com true http://www.htsjk.com/mariadb/24830.html NewsArticle 数据库mariadb的使用,数据库mariadb使用 一 安装mysql MySQL是一个关系型数据库管理系统,将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活...
相关文章
    暂无相关文章
评论暂时关闭