赠送:MySQL5.1参考手册官方简体中文版仅供参考 下载地址
安装方式:
1、源代码:编译安装
2、二进制格式的程序包:展开至特定路径,并经过简单配置后即可使用
3、程序包管理器管理的程序包
CentOS安装光盘
项目官方:https://downloads.mariadb.org/mariadb/repositories/
4、安装和使用MariaDB
CentOS7 直接提供
CentOS6
MariaDB的特性:
单进程,多线程
插件式存储引擎:存储管理器有多种实现版本,功能和特性可能均略有差别;用户可根据需要灵活选择
存储引擎也称之为“表类型”
(1) 更多的存储的存储引擎
MyISAM==> Aria
InnoDB==> XtraDB
Mysql5.5.8开始innoDB引擎是MYSQL默认引擎,InnoDB对比MyISAM的最大特点就是InnoDB支持事务
(2) 诸多扩展和新特性
(3) 提供了较多测试组件
(4) 开源
Centos7的MariaDB数据库包括两个包组:
Mariadb mariadb-client
mariadb组包括下面包:
mariadb-server:mandatory package
mariadb-bench:optional package
mariadb-test:optional package
mariadb-client组包括下面包:
Mariadb:mandatory package
MySQL-python:default package
mysql-connector-odbc:default package
libdbi-dbd-mysql:optional package
mysql-connector-java:optional package
perl-DBD-MySQL:optional package
配置文件:
/etc/my.cnf和/etc/my.cnf.d/*.cnf
安装
yum groupinstall mariadb mariadb-client
systemctl start mariadb
systemctl enable mariadb
提高安全性
mysql_secure_installation(执行此脚本)
设置数据库管理员root口令
禁止root远程登录
删除anonymous用户帐号
删除test数据库
侦听3306/tcp端口可以在绑定有一个或全部接口IP上
vim /etc/my.cnf
[mysqld]加一行:
skip-networking=1 关闭网络连接,只侦听本地客户端,所有和服务器的交互都通过一个socket实现,socket的配置存放在/var/lib/mysql/mysql.sock)可在/etc/my.cnf修改
firewall-cmd --permanent --add-service=mysql
firewall-cmd --reload
```
? (\?) Synonym for `help'. 帮助
clear (\c) Clear the current input statement. 清除当前输入语句。
connect (\r) Reconnect to the server. Optional arguments are db and host.重新连接到服务器。可选参数是db和主机。
delimiter (\d) Set statement delimiter.
edit (\e) Edit command with $EDITOR.编辑命令与$编辑器
ego (\G) Send command to mysql server, display result vertically.
exit (\q) Exit mysql. Same as quit.退出MySQL。
go (\g) Send command to mysql server.发送命令到MySQL服务器。
help (\h) Display this help.显示此帮助
nopager (\n) Disable pager, print to stdout.
notee (\t) Don't write into outfile.
pager (\P) Set PAGER [to_pager]. Print the query results via PAGER.
print (\p) Print current command. 打印当前命令
prompt (\R) Change your mysql prompt.更改MySQL提示。
quit (\q) Quit mysql.退出MySQL。
rehash (\#) Rebuild completion hash.
source (\.) Execute an SQL script file. Takes a file name as an argument. 执行SQL脚本文件。以文件名作为参数
status (\s) Get status inform ation from the server.从服务器获取状态信息
system (\!) Execute a system shell command.执行系统shell命令
tee (\T) Set outfile [to_outfile]. Append everything into given outfile.
use (\u) Use another database. Takes database name as argument. 使用另一个数据库。需要数据库的名称作为参数
charset (\C) Switch to another charset. Might be needed for processing binlog with multi-byte charsets.
warnings (\W) Show warnings after every statement.在每个语句之后显示警告。
nowarning (\w) Don't show warnings after every statement.不显示警告每一语句后。
运行mysql命令:默认空密码登录
use mysql 进入mysql数据库
select user();查看当前用户
create user wang@'172.18.2.%' identified by 'centos' 创建用户
select user,host,password from mysql.user; //查看用户与密码列表
show processlist; 查看当前进程
show databases; 查看数据库列表
安全初始化
/usr/local/mysql/bin/mysql_secure_installatoin
登录系统:mysql –uroot –p
客户端命令:本地执行
mysql> help
每个命令都完整形式和简写格式
mysql> status 或\s
服务端命令:通过mysql协议发往服务器执行并取回结果
每个命令都必须命令结束符号;默认为分号
SELECT VERSION();
在数据库系统中,SQL语句不区分大小写(建议用大写)
但字符串常量区分大小写
SQL语句可单行或多行书写,以“;”结尾
关键词不能跨多行或简写
用空格和缩进来提高语句的可读性
子句通常位于独立行,便于编辑,提高可读性
注释:
SQL标准:
/*注释内容*/ 多行注释
--注释内容单行注释,注意有空格
MySQL注释:#