学习笔记之mariadb的入门操作

2024-06-06 01:58

本文主要是介绍学习笔记之mariadb的入门操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

由于CentOS 7 将MySQL全部都改成了mariadb。所以在CentOS 下yum安装mysql是没有用的。虽然还是有一大堆软件包叫做mysql。

[plain]  view plain copy
在CODE上查看代码片 派生到我的代码片
  1. mysql-community-release.noarch         el7-5                       installed      
  2. php-mysql.x86_64                       5.4.16-23.el7_0.3           @RHEL          
  3. akonadi-mysql.x86_64                   1.9.2-4.el7                 RHEL           
  4. dovecot-mysql.x86_64                   1:2.2.10-4.el7_0.1          RHEL           
  5. libdbi-dbd-mysql.x86_64                0.8.3-16.el7                RHEL           
  6. mysql-connector-java.noarch            1:5.1.25-3.el7              RHEL           
  7. mysql-connector-odbc.x86_64            5.2.5-6.el7                 RHEL           
  8. qt-mysql.i686                          1:4.8.5-8.el7               RHEL           
  9. qt-mysql.x86_64                        1:4.8.5-8.el7               RHEL     

不过不用担心。mariadb和mysql几乎是一样的。首先,mariadb就是由mysql的创始人负责维护的。而mariadb就是mysql创始人女儿的名字。

首先第一步,安装mariadb!!!

1.安装mariadb

[plain]  view plain copy
在CODE上查看代码片 派生到我的代码片
  1. <span style="font-size:18px;">[root@ns ftp]# yum -y install mariadb mariadb-server  
  2. 已加载插件:product-id, subscription-manager  
  3. This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.  
  4. </span>  

2.改密码

下面的操作之前一定要记得先启动mariadb

systemctl  start  mariadb

注意,这里的root和Linux的root没半毛钱关系.maria的初始密码默认是空的。需要你改一下的。不改也能登陆,就是不安全而已,你的库不要密码就能登陆,很可怕

   改密码

[plain]  view plain copy
在CODE上查看代码片 派生到我的代码片
  1. [root@ns ~]# mysqladmin -uroot -p password zhelitianmima  
  2. Enter password:   
  3. [root@ns ~]#   
后面那个zhelitianmima是你要改的密码。Enter password那里直接回车就好了


   登陆mariadb

补充一点。mysql的密码都在mysql这个库里面,有一张表叫user,这里管理了可以登陆数据库的用户


[plain]  view plain copy
在CODE上查看代码片 派生到我的代码片
  1. <span style="font-size:18px;">MariaDB [(none)]> SHOW TABLES FROM mysql;  
  2. +---------------------------+  
  3. | Tables_in_mysql           |  
  4. +---------------------------+  
  5. | columns_priv              |  
  6. | db                        |  
  7. | event                     |  
  8. | func                      |  
  9. | general_log               |  
  10. | help_category             |  
  11. | help_keyword              |  
  12. | help_relation             |  
  13. | help_topic                |  
  14. | host                      |  
  15. | ndb_binlog_index          |  
  16. | plugin                    |  
  17. | proc                      |  
  18. | procs_priv                |  
  19. | proxies_priv              |  
  20. | servers                   |  
  21. | slow_log                  |  
  22. | tables_priv               |  
  23. | time_zone                 |  
  24. | time_zone_leap_second     |  
  25. | time_zone_name            |  
  26. | time_zone_transition      |  
  27. | time_zone_transition_type |  
  28. | user                      |  
  29. +---------------------------+  
  30. 24 rows in set (0.00 sec)</span>  
  31. <span style="font-size:18px;">  
  32. </span>  
[plain]  view plain copy
在CODE上查看代码片 派生到我的代码片
  1. <span style="font-size:18px;">MariaDB [(none)]> SELECT User,Host,Password FROM mysql.user;  
  2. +------+-----------+-------------------------------------------+  
  3. | User | Host      | Password                                  |  
  4. +------+-----------+-------------------------------------------+  
  5. | root | localhost | *3C0631D77CED7755AD5677173D2155BE7D1E514F |  
  6. | root | ns.server |                                           |  
  7. | root | 127.0.0.1 |                                           |  
  8. | root | ::1       |                                           |  
  9. |      | localhost |                                           |  
  10. |      | ns.server |                                           |  
  11. | suse | %         | *45AC16EC077811822DE5C6C4DDB499641E9C817E |  
  12. +------+-----------+-------------------------------------------+  
  13. 7 rows in set (0.00 sec)</span>  


再教一个改密码的方式吧(就是mysql_secure_installation这个命令)

[plain]  view plain copy
在CODE上查看代码片 派生到我的代码片
  1. [root@ns ~]# mysql_secure_installation   
  2. /usr/bin/mysql_secure_installation: line 379: find_mysql_client: command not found  
  3.   
  4. NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB  
  5.       SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!  


介绍几个基本的命令

[plain]  view plain copy
在CODE上查看代码片 派生到我的代码片
  1. show databases;                         显示数据库  
  2. use mysql;                          进入数据库  
  3. show tables;                            显示数据库中的表  
  4. desc user;                          查看user表的数据结构  
  5. flush privileges;                       刷新数据库信息  
  6. select host.user,password from user;                查询user表中的host,user,password字段  

show databases;                  显示数据库
use mysql;                            进入数据库
show tables;                         显示示数据库中的表
desc user;                            查看user表的数据结构
flush privileges;                    刷新数据库信息
select host.user,password from user;     查询user表中的host,user,password字段

create database westos;                        创建westos数据库
use westos;                            
create table linux(                                   创建表,username,password字段
username varchar(15) not null,
password varchar(15) not null
);
select * from mysql.user;                           查询mysql库下的user表中的所以
alter table linux add age varchar(4);          添加age字段到linux表中
ALTER TABLE linux DROP age                删除age字段
ALTER TABLE linux ADD age  VARCHAR(5)  AFTER name        在name字段后添加字段age


有个问题。要是忘了数据库的超级用户密码怎么办呢

[plain]  view plain copy
在CODE上查看代码片 派生到我的代码片
  1. <span style="font-size:18px;">[root@ns ~]# systemctl stop mariadb  
  2. [root@ns ~]# mysqld_safe --skip-grant-tables &>/dev/null &  
  3. [3] 2660  
  4. [root@ns ~]# mysql -u root  
  5. Welcome to the MariaDB monitor.  Commands end with ; or \g.  
  6. Your MariaDB connection id is 1  
  7. Server version: 5.5.41-MariaDB MariaDB Server  
  8.   
  9. Copyright (c) 2000, 2014, Oracle, MariaDB Corporation Ab and others.  
  10.   
  11. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.  
  12.   
  13. MariaDB [(none)]>   
  14.   
  15. </span>  
看吧不用输入密码就直接可以进入mysql了(就不叫mariadb了。叫mysql顺口了)
接下来就改mysql那个数据库里的user下的root的密码吧


就是这个sql语句(我将密码改为了123,放心是加密的,不信看看)

[plain]  view plain copy
在CODE上查看代码片 派生到我的代码片
  1. MariaDB [(none)]> SELECT User,Host,Password FROM mysql.user;  
  2. +------+-----------+-------------------------------------------+  
  3. | User | Host      | Password                                  |  
  4. +------+-----------+-------------------------------------------+  
  5. | root | localhost | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |  
  6. | root | ns.server | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |  
  7. | root | 127.0.0.1 | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |  
  8. | root | ::1       | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |  
  9. |      | localhost |                                           |  
  10. |      | ns.server |                                           |  
  11. | suse | %         | *45AC16EC077811822DE5C6C4DDB499641E9C817E |  
  12. +------+-----------+-------------------------------------------+  
  13. 7 rows in set (0.00 sec)  

为了安全,看看端口上有没有mysql的端口

[plain]  view plain copy
在CODE上查看代码片 派生到我的代码片
  1. [root@ns etc]# nmap localhost  
  2.   
  3. Starting Nmap 6.40 ( http://nmap.org ) at 2016-11-27 22:24 CST  
  4. Nmap scan report for localhost (127.0.0.1)  
  5. Host is up (0.000026s latency).  
  6. Other addresses for localhost (not scanned): 127.0.0.1  
  7. Not shown: 995 closed ports  
  8. PORT     STATE SERVICE  
  9. 21/tcp   open  ftp  
  10. 22/tcp   open  ssh  
  11. 25/tcp   open  smtp  
  12. 80/tcp   open  http  
  13. 3306/tcp open  mysql  
  14.   
  15. Nmap done: 1 IP address (1 host up) scanned in 0.12 seconds  

改了之后退出来杀掉所有跟mysql相关的进程。咋杀我就不说了阿



那我要是不想别人远程登陆我的数据库怎么办呢

修改/etc/my.cnf  在第11行加上skip-networking=1,再重启mysql。

systemctl restart mariadb

[plain]  view plain copy
在CODE上查看代码片 派生到我的代码片
  1.  1 [mysqld]  
  2.  2 datadir=/var/lib/mysql  
  3.  3 socket=/var/lib/mysql/mysql.sock  
  4.  4 # Disabling symbolic-links is recommended to prevent assorted security risks  
  5.  5 symbolic-links=0  
  6.  6 # Settings user and group are ignored when systemd is used.  
  7.  7 # If you need to run mysqld under a different user or group,  
  8.  8 # customize your systemd unit file for mariadb according to the  
  9.  9 # instructions in http://fedoraproject.org/wiki/Systemd  
  10. 10  
  11. 11 skip-networking=1  
  12. 12 [mysqld_safe]  
  13. 13 log-error=/var/log/mariadb/mariadb.log  
  14. 14 pid-file=/var/run/mariadb/mariadb.pid  
  15. 15 #  
  16. 16 # include all files from the config directory  
  17. 17 #  
  18. 18 !includedir /etc/my.cnf.d  
  19. 19   

关于数据库的sql语句就不在这里细说了。直接说如何直接以图形的方式管理数据库吧

1.现在网上下一个phpMyAdmin-3.4.0-all-languages.tar.bz2这个软件包

2.再在yum安装PHP php-mysql http 这3款软件

3.在/var/www/html下解压缩phpMyAdmin

4.在phpMyAdmin-3.4.0-all-languages这个目录中的config.sample.inc.php下找个

$cfg['blowfish_secret'] = ‘随便填个值’ 并将config.sample.inc.php    改名为config.inc.php


关闭防火墙。



得到上面的图形

以图形方式管理数据库

这篇关于学习笔记之mariadb的入门操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1034780

相关文章

51单片机学习记录———定时器

文章目录 前言一、定时器介绍二、STC89C52定时器资源三、定时器框图四、定时器模式五、定时器相关寄存器六、定时器练习 前言 一个学习嵌入式的小白~ 有问题评论区或私信指出~ 提示:以下是本篇文章正文内容,下面案例可供参考 一、定时器介绍 定时器介绍:51单片机的定时器属于单片机的内部资源,其电路的连接和运转均在单片机内部完成。 定时器作用: 1.用于计数系统,可

问题:第一次世界大战的起止时间是 #其他#学习方法#微信

问题:第一次世界大战的起止时间是 A.1913 ~1918 年 B.1913 ~1918 年 C.1914 ~1918 年 D.1914 ~1919 年 参考答案如图所示

[word] word设置上标快捷键 #学习方法#其他#媒体

word设置上标快捷键 办公中,少不了使用word,这个是大家必备的软件,今天给大家分享word设置上标快捷键,希望在办公中能帮到您! 1、添加上标 在录入一些公式,或者是化学产品时,需要添加上标内容,按下快捷键Ctrl+shift++就能将需要的内容设置为上标符号。 word设置上标快捷键的方法就是以上内容了,需要的小伙伴都可以试一试呢!

Tolua使用笔记(上)

目录   1.准备工作 2.运行例子 01.HelloWorld:在C#中,创建和销毁Lua虚拟机 和 简单调用。 02.ScriptsFromFile:在C#中,对一个lua文件的执行调用 03.CallLuaFunction:在C#中,对lua函数的操作 04.AccessingLuaVariables:在C#中,对lua变量的操作 05.LuaCoroutine:在Lua中,

AssetBundle学习笔记

AssetBundle是unity自定义的资源格式,通过调用引擎的资源打包接口对资源进行打包成.assetbundle格式的资源包。本文介绍了AssetBundle的生成,使用,加载,卸载以及Unity资源更新的一个基本步骤。 目录 1.定义: 2.AssetBundle的生成: 1)设置AssetBundle包的属性——通过编辑器界面 补充:分组策略 2)调用引擎接口API

RedHat运维-Linux文本操作基础-AWK进阶

你不用整理,跟着敲一遍,有个印象,然后把它保存到本地,以后要用再去看,如果有了新东西,你自个再添加。这是我参考牛客上的shell编程专项题,只不过换成了问答的方式而已。不用背,就算是我自己亲自敲,我现在好多也记不住。 1. 输出nowcoder.txt文件第5行的内容 2. 输出nowcoder.txt文件第6行的内容 3. 输出nowcoder.txt文件第7行的内容 4. 输出nowcode

Javascript高级程序设计(第四版)--学习记录之变量、内存

原始值与引用值 原始值:简单的数据即基础数据类型,按值访问。 引用值:由多个值构成的对象即复杂数据类型,按引用访问。 动态属性 对于引用值而言,可以随时添加、修改和删除其属性和方法。 let person = new Object();person.name = 'Jason';person.age = 42;console.log(person.name,person.age);//'J

大学湖北中医药大学法医学试题及答案,分享几个实用搜题和学习工具 #微信#学习方法#职场发展

今天分享拥有拍照搜题、文字搜题、语音搜题、多重搜题等搜题模式,可以快速查找问题解析,加深对题目答案的理解。 1.快练题 这是一个网站 找题的网站海量题库,在线搜题,快速刷题~为您提供百万优质题库,直接搜索题库名称,支持多种刷题模式:顺序练习、语音听题、本地搜题、顺序阅读、模拟考试、组卷考试、赶快下载吧! 2.彩虹搜题 这是个老公众号了 支持手写输入,截图搜题,详细步骤,解题必备

C++必修:模版的入门到实践

✨✨ 欢迎大家来到贝蒂大讲堂✨✨ 🎈🎈养成好习惯,先赞后看哦~🎈🎈 所属专栏:C++学习 贝蒂的主页:Betty’s blog 1. 泛型编程 首先让我们来思考一个问题,如何实现一个交换函数? void swap(int& x, int& y){int tmp = x;x = y;y = tmp;} 相信大家很快就能写出上面这段代码,但是如果要求这个交换函数支持字符型

零基础STM32单片机编程入门(一)初识STM32单片机

文章目录 一.概要二.单片机型号命名规则三.STM32F103系统架构四.STM32F103C8T6单片机启动流程五.STM32F103C8T6单片机主要外设资源六.编程过程中芯片数据手册的作用1.单片机外设资源情况2.STM32单片机内部框图3.STM32单片机管脚图4.STM32单片机每个管脚可配功能5.单片机功耗数据6.FALSH编程时间,擦写次数7.I/O高低电平电压表格8.外设接口