Mysql基本管理知识
数据库的启动
[root@node80 ~]# /etc/init.d/mysqld start #mysqld是从安装包拷贝的mysql.server
Starting MySQL. SUCCESS!
mysql启动基本原理
/etc/init.d/mysqld是个shell脚本,启动时调用mysqld_safe脚本,最后调用mysqld主程序启动mysql,
如下,/etc/init.d/mysqld脚本中调用mysqld_safe $bindir/mysqld_safe --datadir="$datadir" --pid-file="$mysqld_pid_file_path" $other_args >/dev/null >& &
[root@node80 ~]# ps -ef | grep mysql | grep -v grep
root : pts/ :: /bin/sh /usr/local/mysql5.5.49/bin/mysqld_safe --datadir=/data --pid-file=/data/node80.pid
mysql : pts/ :: /usr/local/mysql5.5.49/bin/mysqld --basedir=/usr/local/mysql5.5.49 --datadir=/data --plugin-dir=/usr/local/mysql5.5.49/lib/plugin --user=mysql --log-error=/data/node80.err --open-files-limit= --pid-file=/data/node80.pid --socket=/usr/local/mysql5.5.49/tmp/mysqld.sock --port=
关闭数据库的方法
、mysqladmin -u root -ppassword shutdown 优雅关闭(推荐) (多实例脚本中也使用这个)
、/etc/init.d/mysql stop (推荐)
、kill -USER2 ‘cat path/pid’带kill的尽量不用
强制关闭数据库的方法(导致无法启动,数据丢失)
killall mysqld (实在不行了才尝试)
pkill mysqld killall - mysqld 直到mysqld: no process
killed kill - pid
多实例的启动与关闭 (可以写脚本)
启动 /bin/sh ${CmdPath}/mysqld_safe --defaults-file=/data/${port}/my.cnf >& > /dev/null &
关闭 ${CmdPath}/mysqladmin -u ${mysql_user} -p${mysql_pwd} -S /data/${port}/mysql.sock shutdown
为管理员设置密码
方法一、mysqladmin修改
mysqladmin -u root password 'password' #新装时
mysqladmin -uroot -poldpassword password 'newpassword'
方法2、登陆数据库修改
mysql>update mysql.user set password=password("newpassword") where user="root" and host="localhost"; #(必须指定条件及password加密)
mysql>flush privileges;
方法3、密码找回时不能用此种
mysql>set password=password("newpassword");
mysql>flush privileges; ERROR (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
Mysql登陆方法 mysql
mysql -uroot #刚装完无密码
mysql -u root -p #刚装完无密码。多实例登陆 -S socket指定文件
标准的dba命令行登陆,如果使用脚本,密码写入脚本,权限应设成700或加密 mysql -u root -ppassword明文方式 明文方式有隐患,在用history可以查到,并且在/root下的history也有记录,所以可以强制linux不记录历史敏感命令#HISCONTROL=ignorespace (man bash)
mysql提示符(用于区分生产或测试环境。运维要求,比如查看ip地址确认环境,备份再操作)
、prompt \\u@gtms \r:\m:\s: 临时的
、将上述命令放置在my.cnf的[mysql]下
找回丢失的root密码步骤
、关闭数据库 /etc/init.d/mysql stop
、使用--skip-grant-tables启动mysql,忽略授权登陆验证 mysqld_safe --skip-grant-tables --user=mysql &
mysql =====>登陆时密码为空 mysql>update mysql.user set password=password("newpassword") where user='root'
多实例找回丢失的root密码步骤
、关闭mysql #mysqladmin -uroot -prootabcd -S /data//mysql.sock shutdown
、启动时加参数 启动#mysqld_safe --defaults-file=/data//my.cnf --skip-grant-tables &
登陆#mysql -uroot -p -S /data//mysql.sock /*登陆时空密码
3、修改密码的方法
mysql>update mysql.user set password=password("newpassword") where user='root'
mysql>flush privileges;
MySQL帮助命令
help help
help show 获取show命令相关
help grant 获取grant命令相关,建立超级管理员时加with grant option;
help create table
help create database
help alter table
help create index
.......
sq语言的分类
、*数据查询语言DQL select类
、*数据库操作语言DML select insert update delete类
、事物处理语言TPL 确保被DML语句影响的表的所有行及时得到更新。包括begin transaction commit和rollback
、*数据控制语言DCL grant\revoke、commit,rollback
、*数据定义语言DDL create、drop、alter
、指针控制语言 像declare cursor、fetch into和update where current用户对一个或多个表单独行的操作
Mysql基本管理知识的更多相关文章
- mysql数据库相关知识
什么是数据库? 数据库(Database)是按照数据结构来组织.存储和管理数据的建立在计算机存储设备上的仓库.(来自:百度) 什么是sql? 结构化查询语言(Struct ...
- mysql数据库补充知识7 索引原理与慢查询优化
一 介绍 为何要有索引? 一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,在生产环境中,我们遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,因此对查询语句 ...
- MySQL 用户管理与权限管理
MySQL 用户管理与权限管理 -- 操作环境mysql> show variables like 'version'; +---------------+--------+| Variabl ...
- Mysql用户管理及权限分配
早上到公司,在服务器上Mysql的数据库里新建了个database,然后本地的系统里用原来连接Mysql账号admin连这个数据库.结果报错了,大概是这样子的: Access denied for u ...
- MySQL数据库基础知识及优化
MySQL数据库基础知识及优化必会的知识点,你掌握了多少? 推荐阅读: 这些必会的计算机网络知识点你都掌握了吗 关于数据库事务和锁的必会知识点,你掌握了多少? 关于数据库索引,必须掌握的知识点 目录 ...
- [MySQL Reference Manual] 5 MySQL 服务管理
5. MySQL 服务管理 5. MySQL 服务管理 5.1 The Mysql Server 5.2 Mysql 服务日志 5.2.1 选择General query log和slow query ...
- MySQL日志管理
MySQL日志管理 2013年09月26日 ⁄ MySQL ⁄ 共 14266字 ⁄ 评论数 ⁄ 被围观 , views+ 一.日志类型: MySQL有几个不同的日志文件,可以帮助你找出mysqld内 ...
- MySQL 日志管理详解
大纲 一.日志分类 二.日志详解 注:MySQL版本,Mysql-5.5.32(不同版本的mysql变量有所不同) 一.日志分类 错误日志 查询日志 慢查询日志 二进制日志 中继日志 事务日志 滚动日 ...
- Linux进程管理知识整理
Linux进程管理知识整理 1.进程有哪些状态?什么是进程的可中断等待状态?进程退出后为什么要等待调度器删除其task_struct结构?进程的退出状态有哪些? TASK_RUNNING(可运行状态) ...
随机推荐
- 日语能力考试N2必备训读动词
日语能力考试N2必备训读动词 ア合う——あう——「自」合一.合到一起.准确味わう——あじわう——「他」品味.品尝預かる——あずかる——「他」照顾.保管.承担預ける——あずける——「他」寄存.处理难以了 ...
- openapi
https://www.breakyizhan.com/swagger/2810.html https://www.cnblogs.com/serious1529/p/9318115.html htt ...
- PAT Basic 1038 统计同成绩学生 (20 分)
本题要求读入 N 名学生的成绩,将获得某一给定分数的学生人数输出. 输入格式: 输入在第 1 行给出不超过 1 的正整数 N,即学生总人数.随后一行给出 N 名学生的百分制整数成绩,中间以空格分隔.最 ...
- Linux日常之命令sed
一. 命令sed简介 利用命令sed能够同时处理多个文件多行的内容,可以不对原文件改动,仅把匹配的内容显示在屏幕上,也可以对原文件进行改动,但是不会在屏幕上返回结果,若想查看改动后的文件,可以使用命令 ...
- [易学易懂系列|rustlang语言|零基础|快速入门|系列文章]
简单易懂的rustlang入门教程. [易学易懂系列|rustlang语言|零基础|快速入门|(1)|开篇] [易学易懂系列|rustlang语言|零基础|快速入门|(2)|VCCode配置] [易学 ...
- 七、设备驱动中的阻塞与非阻塞 IO(一)
7.1 阻塞与非阻塞 IO 阻塞操作是指在执行设备操作的时候,若不能获取资源,则挂起进程直到满足可操作的条件后再进行操作.被挂起的进程进入睡眠状态,被从调度器的运行队列移走,直到等待的条件被满足. 非 ...
- 【Luogu5294】[HNOI2019]序列
题目链接 题意 给定一个序列,要求将它改造成一个非降序列,修改一个数的代价为其改变量的平方. 最小化总代价. 另有\(Q\) 次询问,每次修改一个位置上的数.(询问之间独立,互不影响) Sol 神仙 ...
- Python---webserver
一. # HTTP项目实战 - 深入理解HTTP协议 - 模拟后台服务程序基本流程和大致框架 - 每一个步骤一个文件夹 - 图解http协议,图解tcp/ip协议 # v01-验证技术 - 验证soc ...
- SpringCloud微服务面试题
spring data是spring用于简化spring开发中数据访问操作的项目spring Dataspring Data为我们提供了使用统一的API来对数据访问层进行操作,这主要是Spring D ...
- 34 String、StringBuffer、StringBuilder
String的值是不可变的,这就导致每次对String的操作都会生成新的String对象,不仅效率低下,而且大量浪费有限的内存空间. StringBuffer是可变类,和线程安全的字符串操作类,任何对 ...