MariaDB数据库的安装配置及常用操作
2017-08-11 21:23
567 查看
1. 认识一下MariaDB
MariaDB是由MySQL的原始开发人员创建的MySQL的流行分支, 它支持小数据处理任务和企业需求。 MariaDB提供与MySQL等相同的功能。MariaDB的重要特性
1.所有MariaDB都在GPL,LGPL或BSD下。 2.MariaDB包括各种存储引擎,包括高性能存储引擎,用于与其他RDBMS数据源一起工作。 3.MariaDB使用标准和流行的查询语言。 4.MariaDB在多个操作系统上运行,并支持各种各样的编程语言。 5.MariaDB提供对PHP的支持,PHP是最流行的Web开发语言之一。 6.MariaDB提供Galera集群技术。 7.MariaDB还提供了许多在MySQL中不可用的操作和命令,并消除/取代影响性能的功能。
2. mariaDB的安装和基本配置(平台为rhel7)
2.1 安装 [root@localhost Desktop]# yum search mariadb
[root@localhost Desktop]# yum install mariadb-server.x86_64 -y
[root@localhost Desktop]# systemctl start mariadb #启动mariaDB服务 [root@localhost Desktop]# systemctl enable mariadb #设置开机自启动 2.2 关闭外部访问端口 [root@localhost Desktop]# vim /etc/my.cnf 添加一行内容:skip-networking=1 2.3 设置用户登陆(不配置可以匿名登录的) [root@localhost Desktop]# mysql_secure_installation #这个过程中除了输密码外基本可以一路回车
一开始输入mysql提示错误是因为服务并未开启,开启服务后以匿名方式登录,接下来就可以运行mysql_secure_installation设置用户了,设置完成后可以以指定用户进行登录,如下:
3. mariadb数据库常用操作命令
不进入数据库直接执行命令mysql -u root -p -e "show databases;" #-u(指定用户),-p(密码参数),-e(执行命令)
常用数据库操作命令:
USE [database name] - 设置当前默认数据库。
SHOW DATABASES - 列出服务器上当前的数据库。 SHOW TABLES - 列出所有非临时表。 SHOW COLUMNS FROM [table name] - 提供与指定表有关的列信息。 SHOW INDEX FROM TABLENAME [table name] - 提供与指定表相关的表索引信息。 SHOW TABLE STATUS LIKE [table name] \ G - - 提供有关非临时表的信息的表,以及LIKE子句用于获取表名后显示的模式。 选择查询 SELECT field, field2,... FROM table_name, table_name2,... WHERE...; 删除查询 DELETE FROM table_name [WHERE …] 创建数据表 CREATE TABLE table_name (column_name column_type); 删除数据表 DROP TABLE table_name ; 创建数据库 CREATE DATABASE database_name; 删除数据库 DROP DATABASE database_name; 插入查询 INSERT INTO tablename (field,field2,...) VALUES (value, value2,...); 更新查询 UPDATE table_name SET field=new_value, field2=new_value2,...[WHERE ...]; #为数据表添加字段 alter table haloo add birth varchar(20); #指定添加的字段位置 alter table haloo add hometown varchar(20) after name;
4. mariadb数据库用户密码管理
4.1 mariadb数据库密码修改
mysqladmin -u root -p halo password lockey #password 选项后的lockey为新密码
4.2 忘记mariadb数据库密码怎么办?
方式一:1.[root@dns-server1 ~]# vim /etc/my.cnf 添加一行:skip-grant-tables #设置进入数据库进行操作时跳过权限或者密码认证 2. [root@dns-server1 ~]# mysql ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) [root@dns-server1 ~]# systemctl restart mariadb.service [root@dns-server1 ~]# mysql Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 2 Server version: 5.5.35-MariaDB MariaDB Server Copyright (c) 2000, 2013, Oracle, Monty Program Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> use mysql#进入mysql数据库 MariaDB [mysql]> update user set Password=password('halo') where User='root'; #重新设置你的root用户的密码,注意格式,password('halo')的作用是在更新时调用函数进行字符加密,要不然密码就会变成明文的格式 Query OK, 3 rows affected (0.00 sec) Rows matched: 3 Changed: 3 Warnings: 0 MariaDB [mysql]> flush privileges; Query OK, 0 rows affected (0.00 sec) #刷新权限(优先级)设置 MariaDB [mysql]> exit Bye [root@dns-server1 ~]# systemctl restart mariadb.service [root@dns-server1 ~]# mysql -u root -phalo Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 6 Server version: 5.5.35-MariaDB MariaDB Server Copyright (c) 2000, 2013, Oracle, Monty Program Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]>
方式二:
[root@localhost Desktop]# systemctl stop mariadb.service [root@localhost Desktop]# ps -aux | grep mariadb root 4031 0.0 0.0 112644 956 pts/0 S+ 20:34 0:00 grep --color=auto mariadb #需要结束掉mariaDB的所有进程 [root@localhost Desktop]# mysqld_safe --skip-grant-tables & #设置mysql登录时跳过授权表 [root@localhost Desktop]# mysql #登录数据库修改用户密码,接下来步骤与上一个方法一致
5 数据库备份(以名称为lockey的数据库为例)
mysqldump -uroot -phalo lockey > lockey.dump ####备份某个数据库 mysqldump -uroot -phalo --all-databases > backup.dump ###备份所有数据库的数据 ######恢复时不需要指定任何数据库,命令格式如下: mysql -uroot -predhat </mnt/all.dump # mysqldump -uroot -phalo --no-data lockey > lockey.dump ###只备份数据库中的表结构,不备份数据
数据库备份与恢复实际操作:
1.备份数据库 mysqldump -u root -phalo lockey >/mnt/lockey.sql #cat /mnt/lockey.sql查看备份的数据库文件,发现里面全是sql语句 2.删除数据库 mysql -uroot -phalo -e 'drop database lockey;' 或者使用命令mysqladmin -uroot -phalo drop testdb 3.创建一个数据恢复的数据库 mysql -uroot -phalo -e "create database lockey;" 或者使用命令mysqladmin -uroot -phalo create testdb 4.将数据恢复到数据库中 mysql -uroot -phalo lockey </mnt/lockey.sql
6. 数据库用户管理以及用户授权
创建用户 CREATE USER lcokey@localhost identified by 'lockey';#默认对数据库的操作访问权限为最低 用户授权 GRANT INSERT,UPDATE,DELETE,SELECT on lockey.* to lcokey@localhost; GRANT SELECT on lockey.* lcokey@localhost; 重载授权表 FLUSH PRIVILEGES; 查看用户授权 SHOW GRANTS FOR lockey@localhost; 撤销用户权限 REVOKE DELETE,UPDATE,INSERT on lockey.* from lockey@localhost; 删除用户 DROP USER lockey@localhost;
注意:如果授权了UPDATE权限而没有授权INSERT和SELECT会导致UPDATE命令失败的情况出现,因为:
UPDATE需要执行插入,而INSERT权限不够 如果update命令后有where 条件语句那么也会失败,因为SELECT权限不够
7. mysql图形管理软件安装
mysql图形图形管理软件其实就是一些php程序,所以必须要有php支持以及php对数据库操作的支持7.1 下载管理组件,将组建解压到apache根目录下 tar jxf phpMyAdmin-3.4.0-all-languages.tar.bz2 -C /var/www/html/ 7.2将组件访问的名称改为自己喜欢的名字 cd /var/www/html/ mv phpMyAdmin-3.4.0-all-languages/ sqladmin 7.3 配置组件 cd sqladmin/ cp config.sample.inc.php config.inc.php vim Documentation.txt #Documentation.txt文件为配置解释文件,可根据这个文件进行配置 vim config.inc.php #进行组件配置,一般只需要加入一串识别码就可以,具体参考配置文档 7.4 下载php以及php对数据库的操作组件 yum install php php-mysql -y
测试:在浏览器中输入:127.0.0.1/sqladmin进行访问,一般会出现一个登陆页面,输入你的数据库用户以及密码就可以进行图形化的数据库管理了额
相关文章推荐
- mysql 安装配置及常用操作
- MariaDB数据库在Linux下的编译安装配置
- Linux安装配置MariaDB数据库全程详解
- TortoiseSVN下载,安装,配置,常用操作 svn教程
- Linux下oracle11gR2系统安装到数据库建立配置及最后oracle的dmp文件导入一站式操作记录(转)
- Mysql免安装版安装配置及常用操作
- mongodb 3.2 实战(二)安装配置及常用操作
- mysql 5个常用操作,添加用户配置对应数据库,开启远程访问,修改密码
- Mysql免安装版安装配置及常用操作
- MariaDB安装、初始化及常用操作
- MariaDB安装、初始化及常用操作
- 通过配置DS操作数据库的常用代码
- mariadb数据库安装配置
- x86平台内核配置,编译和安装过程(常用操作)
- Git安装完后的配置及常用操作命令
- MariaDB数据库安装、配置
- KAFKA安装+配置详解+常用操作+监控
- CentOS系统使用yum安装配置MariaDB数据库
- Navicat(数据库可视化操作软件)安装、配置、测试
- Linux下编译安装配置MariaDB数据库的方法