【Ubuntu 16.04.3 LTS】apt-get 安装MariaDB
一、Mysql背景信息
Mysql在互联网早期就流行了,追求速度、简单、坚持开源、几乎支持所有操作系统。完全支持多用户、多线程,支持海量数据存储,采用MyISAM、InnoDB两大存储引擎优势互补。但随着InnoDB和Mysql自身被Oracle收购,促使Mysql的创始人开发了MariaDB。
MariaDB最大的特点就是采用XtraDB存储引擎,并和原生版本兼容,保留了Mysql的自由开放,XtraDB是Percona开发的高性能存储引擎,主要是为了替代InnoDB.除了XtraDB引擎,后起之秀TokuDB支持高性能、事务处理的存储引擎,性能比InnoDB高出很多,超高的insert性能、高压缩比、支持在线修改索引、添加字段。
安装时Mysql、MariaDB、Percona Server 不能共存,要部署MariaDB就必须卸载另外两个。否则出现“mysql service masked”错误。
二、安装MariaDB
1.安装数据库环境
- dream361@ubuntu16:~$ sudo aptitude install -y mariadb-server mariadb-client
2.安装数据库实例
- dream361@ubuntu16:~$ sudo mysql_secure_installation
- NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
- SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
- In order to log into MariaDB to secure it, we'll need the current
- password for the root user. If you've just installed MariaDB, and
- you haven't set the root password yet, the password will be blank,
- so you should just press enter here.
- Enter current password for root (enter for none): 设置root的密码1
- OK, successfully used password, moving on...
- Setting the root password ensures that nobody can log into the MariaDB
- root user without the proper authorisation.
- You already have a root password set, so you can safely answer 'n'.
- Change the root password? [Y/n] n 是否改变密码:n不改变
- ... skipping.
- By default, a MariaDB installation has an anonymous user, allowing anyone
- to log into MariaDB without having to have a user account created for
- them. This is intended only for testing, and to make the installation
- go a bit smoother. You should remove them before moving into a
- production environment.
- Remove anonymous users? [Y/n] y 是否移除测试用户:y是的
- ... Success!
- Normally, root should only be allowed to connect from 'localhost'. This
- ensures that someone cannot guess at the root password from the network.
- Disallow root login remotely? [Y/n] y 是否允许root远程登录:n不允许
- ... Success!
- By default, MariaDB comes with a database named 'test' that anyone can
- access. This is also intended only for testing, and should be removed
- before moving into a production environment.
- Remove test database and access to it? [Y/n] y 删掉测试数据库test:y删掉
- - Dropping test database...
- ... Success!
- - Removing privileges on test database...
- ... Success!
- Reloading the privilege tables will ensure that all changes made so far
- will take effect immediately.
- Reload privilege tables now? [Y/n] y 重新加载权限表:y重新加载
- ... Success!
- Cleaning up...
- All done! If you've completed all of the above steps, your MariaDB
- installation should now be secure.
- Thanks for using MariaDB
3.查看MariaDB数据库服务状态 (这里也说明了MariaDB与其他Mysql数据库不能共存在同一操作系统)
- dream361@ubuntu16:~$ sudo systemctl status mysql
4.启动MariaDB数据库服务
- dream361@ubuntu16:~$ sudo systemctl start mysql
3.设置mysql随系统服务启动
- dream361@ubuntu16:~$ sudo update-rc.d mysql defaults
4.撤销随系统服务启动
- dream361@ubuntu16:~$ sudo update-rc.d -f mysql remove
5.与之前版本mysql不同,需要获得操作系统管理员权限,才能登录MariaDB的root用户,普通操作系统用户不能登录MariaDB数据库root用户
- dream361@ubuntu16:~$ sudo mysql -u root -p
6.备份mysql数据库 也需要获得操作系统管理员才能执行备份
- dream361@ubuntu16:~$ sudo mysqldump -uroot -p mysql >mysql.sql
7.创建普通数据库用户 (登录普通数据库用户则不需要获得操作系统管理员权限)
- create user 'zhangdc'@'%' identified by '1'; (后面数字是密码 可自行设置)
8.登录远地数据库(需要henry@'%')
- dream361@ubuntu16:~$ mysql -h localhost -u henry -p1
9.修改MariaDB配置文件,监听外网访问
- dream361@ubuntu16:~$ sudo vim /etc/mysql/mariadb.conf.d/50-server.cnf
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
#bind-address = 127.0.0.1 #注释掉这一行
10.重启数据库服务,使配置生效
- dream361@ubuntu16:~$ sudo systemctl restart mysql
11.MariaDB版本
- dream361@ubuntu16:~$ mysql -V
- mysql Ver 15.1 Distrib 10.0.29-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
【Ubuntu 16.04.3 LTS】apt-get 安装MariaDB的更多相关文章
- Ubuntu 16.04.2 LTS 安装 jdk1.6 和 tomcat6 (一)
java和tomcat环境配置已经有很多教程和文章,最近项目需要配置Ubuntu 16.04.2下的古老的java6和tomcat 6,遇到小坑,特记录和分享. 网上的教程不是太新,就是太老,还有一些 ...
- Ubuntu 16.04.2 LTS 安装 jdk1.6 和 tomcat6 (二)
上一篇记录和分享了jdk1.6 在Ubuntu 16.04.2 环境下的安装配置,本文开始安装和配置tomcat 6 2 安装tomcat http://tomcat.apache.org ...
- Ubuntu 16.04.4 LTS环境中php7.0使用mysqli失败,数据库无法访问
环境: Ubuntu 16.04.4 LTS php7.0 输入命令php -m,显示如下,发现没有mysqli模块 输入命令sudo apt install php-mysql,安装mysql模块, ...
- Ubuntu 16.04.3 LTS u盘-安裝教程(填坑)
Ubuntu 16.04.3 LTS 下载地址: https://www.ubuntu.com/download/desktop 下载u盘后文件为iso,可以选择UltraISO制作U盘启动,也可以直 ...
- Alienware-15-R3 装Ubuntu 16.04.3 LTS
前言:Alienware-15-R3默认安装的系统是win10.现在卸载win0,装Ubuntu 16.04.3 LTS. 一.下载Ubuntu 16.04.3 LTS镜像文件,下载地址:https: ...
- Ubuntu 16.04下EasyOpenJTAG+OpenOCD的安装和使用【转】
本文转载自:http://www.linuxdiyf.com/linux/24086.html Ubuntu 16.04下EasyOpenJTAG+OpenOCD的安装和使用 发布时间:2016-09 ...
- Ubuntu 16.04.4 LTS设置root用户登陆图形界面
普通用户登陆真是太憋屈,这也不能那也不能,root用户登录就可以肆无忌惮了 本方法采用nano编辑器,ubantu版本Ubuntu 16.04.4 LTS,其他版本应该也一样,下面进入正题 1.终端登 ...
- ubuntu 16.04 anaconda 4.2.0 安装tensorflow 报错
ubuntu 16.04 anaconda 4.2.0 安装tensorflow 报错. 安装pyenv后,在pyenv环境内安装 anaconda,然后再安装tensorflow不再报错,比较奇怪, ...
- ubuntu 16.04上 mysql 5.7 安装笔记
一 安装 ubuntu 采用APT安装方式,可参考: Ubuntu 安装mysql和简单操作 Ubuntu 16.04安装MySQL(5.7.18) A Quick Guide to Using th ...
随机推荐
- Why do Antennas Radiate?
Obtaining an intuitive idea for why antennas radiate is helpful in understanding the fundamentals of ...
- windows下ACE安装使用教程(转)
ACE简介:ACE是一个跨平台的用于并发通信的C++框架.它提供了丰富的C++封装器和框架组件.使用ACE,开发者可以开发出高性能,实时的通信服务和应用.ACE利用进程间通信,事件分离,动态链接和并发 ...
- 一个官翻教程集合:ASP.NET Core 和 EF Core 系列教程
通过一个大学课程案例讲解了复杂实体的创建过程及讲解 1.ASP.NET Core 和 Entity Framework Core 系列教程——入门 (1 / 10) 2.ASP.NET Core 和 ...
- POJ 3087 Shuffle'm Up(模拟退火)
Description A common pastime for poker players at a poker table is to shuffle stacks of chips. Shuff ...
- lnmp1.4环境FTP服务器的安装和使用
首先还是用Xshell连接到VPS界面,进入lnmp解压后的目录,命令如下: cd lnmp1.4 然后安装FTP服务器,命令如下: ./pureftpd.sh 看到提示Press any ...
- NoSQL摘录
NoSQL泛指非关系型数据库,诸如Cassandra.MongoDB.Neo4J和Riak等.它们主张使用无模式(schemaless)的数据,可以运行在集群环境中. 开源的NoSQL数据库:Redi ...
- 转 OAuth 2.0授权协议详解
http://www.jb51.net/article/54948.htm 作者:阮一峰 字体:[增加 减小] 类型:转载 时间:2014-09-10我要评论 这篇文章主要介绍了OAuth 2.0授权 ...
- PHP实现AOP的雏形
AOP是OOP的延续,是Aspect Oriented Programming的缩写,意思是面向方面编程,有的又称之为面向切面编程.在企业级开发中面向方面编程很有用.比如,我们在调用某些特定的方法之前 ...
- 如何在mysql下实现事务的提交与回滚
最近要对数据库的数据进行一个定时迁移,为了防止在执行过程sql语句因为某些原因报错而导致数据转移混乱,因此要对我们的脚本加以事务进行控制. 首先我们建一张tran_test表 CREATE TABLE ...
- mysql数据库中不能插入0000-00-00 00:00:00日期数据(报错Invalid datetime format: 1292 Incorrect datetime value: '0000-00-00 00:00:00')
报错信息 SQLSTATE[22007]: Invalid datetime format: 1292 Incorrect datetime value: '0000-00-00 00:00:00' ...