0x01

mysql启动时,读取配置文件的顺序

Default options are read from the following files in the given order:
/etc/mysql/my.cnf     /etc/my.cnf      ~/.my.cnf

使用配置文件的方式
1.它依次查找多个需要查找的文件,结果是所有文件交集
2.如果某参数在多个文件中宏出现多次,后配置的最终生效

可以使用 mysql --help --verbose 来查看
1.显示mysql的程序启动时可用的选项,通常都是长选项
2.显示mysqld配置文件中可用的服务变量
mysql > show global variables
mysql > show session variables

0x02

1. 在mysql数据库安装好之后,首先的初始化操作就是删除匿名用户

查询有哪些匿名用户

select host,user,password from mysql.user;

删除对应的匿名用户,实际情况,可根据实际情况删除。

drop user ''@'localhost';

drop user ''@'stuphp.hping3.com';

用户名账号由两部分组成:username@host
host还可以使用通配符
%:任意长度的任意字符
_:匹配任意单个字

2. 给所有root用户设置密码

第一种方式修改密码:

实例 ---> mysql > set password for root@localhost = password('photon');

格式 ---> mysql > set password for username@host = password( 'your_password')

第二种方式修改密码:

该方式修改密码,是直接修改mysql下的user表,所有要先进到user表中执行

故   use mysql;

update user set password = password('redhat') where user = 'root';

让其立即生效   ---- 即 让其通知mysqld重新读取 user表

flush privileges;

第三种方法修改密码:

实例 ---->

mysqladmin -uroot -hlocalhost password 'photon' -p  ----localhost  是一个主机IP

mysqladmin -u root -h localhost -p flush-privileges    ----让其生效

格式 ---->

mysqladmin -u UserName -h Hot password 'new_password' -p
mysqladmin -u UserName -h Host -p flush-privileges

0x03

接入MySQL服务器
mysql <-mysql protocol-> mysqld

mysql接受链接请求
本地通信:客户端与服务器端位于同一主机,而且还要基于127.0.0.1(localhost)地址或lo接口进行通信
Linux OR Unix:Unix Sock,/tmp/mysql.scok,/var/lib/mysql/mysql.sock


Widows:memory pipe
远程通信:客户端与服务器位于不同的主机,或在统一主机便使用非回环地址通信
TCP Socket

客户端工具:mysql,mysqladmin,mysqldump,mysqlcheck
[client]

通信的选项:
-u,--user=
-h, --host=
-p, --password=
--protocol={tcp|socket|memory|pipe}
--port=
--socket=/tmp/mysql.sock

mysql监听的端口:3306/tcp

非客户端类的管理工具:myisamchk,myisampack
myisamchk --检测工具
myisampack 打包工具
mysql:
交互式模式
mysql>
脚本模式
mysql < /path/to/mysql_scripy.sql

mysql交互式模式:
客户端命令
mysql> help
mysql>\?
\c:取消命令的执行
\g
\G
\q
\!
\s
\. /path/to/mysql_script.mysql 批处理zhixingmysql命令
\# 命令补全 --- 她需要读取表重新生成hash ,会导致比较大的数据,出现卡的情况
服务器端命令:需要命令结束符,默认为分号(;)
mysql> help关键字

help contents   获取整体列表

help  keyword   获取相关命令的列表

List of all MySQL commands:
Note that all text commands must be first on line and end with ';'
? (\?) Synonym for `help'.
clear (\c) Clear the current input statement.
connect (\r) Reconnect to the server. Optional arguments are db and host.
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.
go (\g) Send command to mysql server.
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.
quit (\q) Quit mysql.
rehash (\#) Rebuild completion hash.
source (\.) Execute an SQL script file. Takes a file name as an argument.
status (\s) Get status information from the server.
system (\!) Execute a system shell command.
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.

0x04

mysql命令行选项
--compress 压缩传输
--default-character-set 默认的字符集设置
-V: 显示版本号
-v: 显示详细信息
--ssl-ca ca证书
--ssl-capath ca证书的文件夹
--ssl-cert 客户端证书
--ssl-cipher 加密
--ssl-key 使用的私钥
--ssl-verify-server-cert 验证服务器端证书

--database= -D:指定要使用的数据库

mysql命令提示符
mysql> 等待输入命令
'> 前面提供的‘未提供结束’
”> 引用字符串
`> 引用字符串
—> 续航符
/*> 注释信息

mysql快捷键和Linux下shell差不多

ctrl+w:删除光标所在处之前的一个单词  --- 同shell
ctrl+u:删除光标之前的所有内容到行首  --- 同shell
ctrl+y:粘贴之前ctrl+w或者ctrl+u删除的内容
ctrl+a:移动光标至行首     --- 同shell
ctrl+e:移动光标至行尾     --- 同shell

mysql的输出格式

-H --html:输出为html格式的文档
-X --xml:输出为xml格式的文档

--safe-updates:发送命令时拒绝使用无where字句的update或delete命令   但是如果使用limit 是可以正常执行

使用 -H参数

mysql -H -uroot -p    ----查询结果是html格式

0x05

mysqladmin工具
mysqladmin [options] command [arg] [command[arg]] .....

command
create DB_Name 创建空数据库 mysqladmin -uroot -p create mydb
-e:直接返回 mysql -uroot -p -e 'show databases;' ---不进数据库就可以查看数据库
drop DB_Name 删除数据库
debug 打开调试日志并记录与error log中
status:输出简要状态信息 mysqladmin -uroot -p status
-sleep # 指定显示延迟 mysqladmin -uroot -p status --sleep 3 sleep 指定睡眠几秒钟再显示
-count # 指定批次 mysqladmin -uroot -p status --sleep 1 --count 5 指定显示几次
extended-status:输出mysq的各状态变量及数值,相当于执行“mysql> show global status” mysqladmin -uroot -p status extended-status
flush-hosts:清空主机相关的缓存:DNS解析缓存,此前因为连接错误次数过多而被拒绝访问mysqld的主机列表
flush-logs:日志滚动,主要是二进制日志和中继日志
refresh:相当于同时使用flush-logs和flush-hosts

flush-privileges:通知服务器重读授权表
reload:重载授权表
flush-status:重置状态变量的值
flush-tables:关闭当前打开的表文件句柄, 但是如果有表正在被查询,就要等查询完毕,才关闭!
flush-threads:清空线程缓存
kill:杀死指定的线程,可以一次杀死多个线程,以逗号分隔,但不能有多余空格
password:修改指定用户的密码
processlist: 显示线程列表 mysqladmin -uroot -p processlist
shutdown:关闭mysqld进程

start-slave 启动从服务器进程
stop-slave 关闭从服务器进程
variables:显示mysql的各服务器进程

GUI客户端工具
Navicat for mysql    ---推荐使用该GUI工具
Toad for mysql
SQLyog
MySQL Front
phpMyAdmin

总结 -----> mysql初始化,mysql配置文件读取次序,mysql初始用户,mysql客户端命令 mysqladmin GUI

mysql基础-数据库初始化操作必要步骤和客户端工具使用-记录(二)的更多相关文章

  1. MySQL基础/数据库和表的设计

    MySQL基础 一:安装MySQL(按步骤操作,如果下载后使用不了,试着用360安全卫士卸载MySQL,清除残留的,方便在下载造成不必要的麻烦:如果这样也不行,那就需要重做系统在进行下载) 二:创建数 ...

  2. MySQL基础~~表结构操作

    登录数据库服务器 mysql -h127.0.0.1 -uroot -p123456 创建数据库 create database test; 显示所有数据库 show databases; 指定要操作 ...

  3. mysql 导入数据库 命令操作

    window下 1.导出整个数据库 mysqldump -u 用户名 -p 数据库名 > 导出的文件名 mysqldump -u dbuser -p dbname > dbname.sql ...

  4. mysql避免数据库误操作小技巧(转)

    避免混淆开发环境的DB和生产环境的DB这在小公司小团队尤其常见.一个人即负责开发,又管DB.桌面上开了一坨终端,有的是开发的DB,有的是生产的DB.一不留神,就写串了,或者粘贴串了.更郁闷的是,有时候 ...

  5. MySQL教程:数据库具体操作

    1. 连接数据库服务器 $ ./mysql -h host_name -u user_name -p -h host_name(--host=host_name),连接的数据库主机名,如果在本地主机上 ...

  6. Mysql基础3-数据操作语言DML-数据查询语言DQL

    主要: 数据操作语言DML 数据查询语言DQL 数据操作语言DML DML: Data Mutipulation Language 插入数据(增) 一般插入数据形式 1)形式1: insert [in ...

  7. MySQL基础 - 数据库备份

    出于安全考虑,数据库备份是必不可少的,毕竟对于互联网公司数据才是价值的源泉~ 距离mysql账号为icebug,密码为icebug_passwd, 数据库为icebug_db mysqldump -u ...

  8. php操作mysql(数据库常规操作)

    php操作数据库八步走 <?php .建立连接 $connection '); .判断连接是否成功 if (mysqli_connect_error() != null) { die(mysql ...

  9. mysql基础-数据库表简单查询-记录(五)

    0x01 MySQL的查询操作 单表查询:简单查询                 多表查询:连续查询                联合查询 选择和投影 投影:挑选要符合的字段     select ...

随机推荐

  1. 神奇的'license': 'AGPL 3.0'标签报错

    在__minifest__.py中,放了license标签,然后整个模块就报错了. 注释掉这个标签就好了.

  2. Java 中的过滤器Filter 和拦截器 Interceptor

    1.先说拦截器 Interceptor 本项目以springboot为例: 新建 InterceptorConfig package com.opendev.mystudy.MyInterceptor ...

  3. 使用php+mysql+xml完成一个调查问卷

    本人根据php典型模块与项目实战大全此书所完成的一个调查问卷,同时管理员可以进行修改调查内容 同时用到了一个css文件,借鉴于 http://www.wufangbo.com/div-css-vote ...

  4. uefi win10 Ubuntu 18的安装

    uefi win10 Ubuntu 18的安装 (Ubuntu折腾的第一天) 安装时的踩坑记录

  5. Hyperledger Fabric——balance transfer(六)查询

    balance transfer 提供了很多查询接口,包括链码查询,根据区块号查询区块数据,根据交易ID查询交易信息,查询链上的区块数,查询已安装或已实例化的链码,查询通道. 源码解析 1.调用链码查 ...

  6. poj1780欧拉回路

    转载 #include<cstdio> #include<cstring> ; bool vis[N]; char ans[N]; int main() { int n; wh ...

  7. TP5.0验证器使用方法

    比如我要在分类做一个验证器,首先要在你的后台模块先建立一个文件夹,比如我的后台模块是admin,那么你要在admin里面建立一个validate的文件夹然后再建立一个对应的php文件如下图 文件里面的 ...

  8. 搭建Istio基础环境

    需求 搭建istio基础环境(基于1.5.1版本) 安装步骤 在安装 Istio 之前,需要一个运行着 Kubernetes 的环境,安装步骤可以参考前面的文章 下载istio,然后解压,然后将 is ...

  9. [UWP]使用离散式关键帧播放动画

    这篇文章介绍离散式关键帧,并使用它做些有趣的动画. 1. 什么是离散式关键帧 以DoubleAnimationUsingKeyFrames为例,它支持四种Double的关键帧,其中EasingDoub ...

  10. 如何在npm发布轮子

    我们在前端工程开发中通常使用npm这个包管理器来安装各种好用的轮子(当然也有用yarn的),不安分的码工就想,也发布一个试试,哪怕只是一个小时候滚的铁环而不是轮子. 首先,要在 npmjs官网注册自己 ...