mysql数据库

mysql事务

只谈情不闲聊 提交于 2020-03-01 08:48:54
事务:一组sql语句操作单元,组内所有sql语句完成一个业务.注意只有innodb和bdb可以使用事务安全 如果整组成功则意味着全部sql语句都实现。如果其中任何一个失败,意味着整个操作失败。失败意味着整个过程都是没意义的,数据库应该回到最初始的状态。上面的特性,就是事务。 如何处理:失败后,可以回到开始位置、没有成功之前,别的用户(进程,对话)是不能看到操作内的数据修改的 思路:就是在一组操作之前,设计一个记号(备份点)。操作成功就让别人看到数据的修改,如果失败别人就不能看到修改,而且回到记号位置。 实现:利用innodb存储引擎的事务日志功能。 sql执行分为2个阶段:一个是执行阶段一个是将执行结果提交到数据库的阶段。其中我们的事务日志,就是保存执行阶段的结果。如果可以用,则将执行的结果提交到数据库 数据库默认的执行方式是:自动提交(autocommit)。执行完后自动完成提交工作。想要完成事务安全就需要关闭自动提交功能。set autocommit=0; 例:交班费业务30元:包含两条sql语句update `sm_student` set `s_money`=`s_money`-30 where id=1; update `class` set `c_money`=`c_money`+30 where id=1;

ERROR 1045 (28000): Access denied for user 'ODB...

痞子三分冷 提交于 2020-03-01 08:47:38
今天为了解决乱码的问题,把mysql的编码格式修改为UTF8,是UTF8而不是UTF-8。 现在登录数据库出现: ERROR 1045 (28000): Access denied for user 'ODBC'@'localhost' (using password: N O) 通过摸索,在安装目录下: C:\Program Files\MySQL\MySQL Server 5.5\bin 找到MySQLInstanceConfig.exe,因为我使用的是windows操作系统。然后重新设置密码,登录正常。 若为Linux系统: 在mysql安装目录下的bin往path里添加,然后用mysql -u用户名 -p密码 重设密码的方法: $ mysql -u root -p #--登录mysql 服务器 mysql> use mysql; #使用mysql数据库 mysql> update user set password=PASSWORD("123456") where User='root'; #--更新用户密码 mysql>flush privileges; #--重新刷新权限 mysql> quit #--退出mysql服务器 来源: oschina 链接: https://my.oschina.net/u/172402/blog/76232

k8s例子---wordpress

蹲街弑〆低调 提交于 2020-03-01 08:27:55
[root@k8smaster wordpress]# pwd /root/k8s_yml/wordpress [root@k8smaster wordpress]# ls mysql-rc.yml mysql-svc.yml wordpress wordpress-rc.yml wordpress-svc.yml wordpress+数据库,两个服务,四个资源 [root@k8smaster wordpress]# cat mysql-rc.yml apiVersion: v1 kind: ReplicationController metadata: name: wordpress-db spec: replicas: 1 selector: app: wordpress-db template: metadata: labels: app: wordpress-db spec: containers: - name: wordpress-db image: 10.0.0.11:5000/mysql:5.7 ports: - containerPort: 3306 env: - name: MYSQL_ROOT_PASSWORD value: 'somewordpress' - name: MYSQL_DATABASE value: 'wordpress' - name:

centos7 搭建 mysql8

被刻印的时光 ゝ 提交于 2020-03-01 06:32:14
记录centos搭建mysql遇到的坑 1. 直接用centos 的yum命令进行安装,发现找不到 mysql-server,于是下载 rpm文件进行后在进行安装,具体可参考官网 https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/ 2. mysql服务端安装成功,并从本地启动后,登陆不上。 正常来说 mysql(8版本) 第一次 启动后,会在 /var/log/mysqld.log 记录一个 root 对应的临时密码 , 使用此密码通过 mysql -uroot -p"临时密码" 可登陆到mysql。 临时密码可以通过 grep 'temporary password' /var/log/mysqld.log 这个命令查看到 如果发现 /var/log/mysqld.log 文件为空或者无密码 。 可以在 /etc/my.cnf 文件的第二行插入 skip-grant-tables ,文件内容大致如下: [mysqld] #skip-grant-tables -- 这一行表示可以不输入密码直接登入 mysql #skip-networking -- 这一行表示本机运行,外部无法连接 datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock # Disabling

mysql中的事务

落花浮王杯 提交于 2020-03-01 06:02:21
mysql中的事务 1.mysql中的innodb存储引擎才支持事务。 2.事务就是一组sql语句,只要全部的sql语句执行成功,事务才会提交(COMMIT),只要有一条sql语句执行失败,则事务不成功,需要回滚(rolback)。 3.对于事务而言,它需要满足ACID特性,下面就简要的说说事务的ACID特性。   1)A,表示原子性;原子性指整个数据库事务是不可分割的工作单位。只有使事务中所有的数据库操作都执行成功,整个事务的执行才算成功。事务中任何一个sql语句执行失败,那么已经执行成功的sql语句也必须撤销,数据库状态应该退回到执行事务前的状态;   2)C,表示一致性;也就是说一致性指事务将数据库从一种状态转变为另一种一致的状态,在事务开始之前和事务结束以后,数据库的完整性约束没有被破坏;   3)I,表示隔离性;隔离性也叫做并发控制、可串行化或者锁。事务的隔离性要求每个读写事务的对象与其它事务的操作对象能相互分离,即该事务提交前对其它事务都不可见,这通常使用锁来实现;   4)D,持久性,表示事务一旦提交了,其结果就是永久性的,也就是数据就已经写入到数据库了,如果发生了宕机等事故,数据库也能将数据恢复。 4.默认的事务都是开启的 可以通过 set autocommit = 0 取消自动提交事务。 5.可以为不同的地方设置回滚点 设置回滚点:save point 保存点名称

MySQL存储过程之事务管理

浪尽此生 提交于 2020-03-01 06:01:17
ACID:Atomic、Consistent、Isolated、Durable 存储程序提供了一个绝佳的机制来定义、封装和管理事务。 1,MySQL的事务支持 MySQL的事务支持不是绑定在MySQL服务器本身,而是与存储引擎相关: MyISAM:不支持事务,用于只读程序提高性能 InnoDB:支持ACID事务、行级锁、并发 Berkeley DB:支持事务 隔离级别: 隔离级别决定了一个session中的事务可能对另一个session的影响、并发session对数据库的操作、一个session中所见数据的一致性 ANSI标准定义了4个隔离级别,MySQL的InnoDB都支持: READ UNCOMMITTED:最低级别的隔离,通常又称为dirty read,它允许一个事务读取还没commit的数据,这样可能会提高性能,但是dirty read可能不是我们想要的 READ COMMITTED:在一个事务中只允许已经commit的记录可见,如果session中select还在查询中,另一session此时insert一条记录,则新添加的数据不可见 REPEATABLE READ:在一个事务开始后,其他session对数据库的修改在本事务中不可见,直到本事务commit或rollback。在一个事务中重复select的结果一样,除非本事务中update数据库。 SERIALIZABLE

MYSQL插入数据时忽略重复数据

佐手、 提交于 2020-03-01 05:49:39
当程序中insert时,已存在的数据不插入,不存在的数据insert。在网上搜了下, 可以使用存储过程或者是用NOT EXISTS 来判断是否存在。 使用下以两种方法时必须把字段设为”主键(PRIMARY KEY”或”唯一约束(UNIQUE)”。 1:使用REPLACE INTO (此种方法是利用替换的方法,有点似类于先删除再插入) REPLACE INTO Syntax REPLACE [LOW_PRIORITY | DELAYED] [INTO] tbl_name [(col_name,...)] {VALUES | VALUE} ({expr | DEFAULT},…),(…),… Or: REPLACE [LOW_PRIORITY | DELAYED] [INTO] tbl_name SET col_name={expr | DEFAULT}, … Or: REPLACE [LOW_PRIORITY | DELAYED] [INTO] tbl_name [(col_name,...)] SELECT … 2:使用INSERT [IGNORE] INTO (此种方法效率比较高,判断是否存在,存在不插入,否则插入) INSERT [IGNORE] INTO Syntax INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY]

Linux下Nginx+PHP+MySQL配置

假如想象 提交于 2020-03-01 03:43:58
Nginx是一个高性能的HTTP和反向代理 服务器 ,同时还是IMAP/POP3/SMTP代理 服务器 , 该程序由俄罗斯Rambler.ru 站点开发,Nginx因为性能稳定、低系统资源消耗而闻名,近几年Nginx在国内已经成炙热化状态,比如像腾讯、网易、51CTO、迅雷、当当网、 51、人人网等诸多大型网站都已经使用Nginx来做Web服务器,所以我们要学会运用Nginx还是非常有必要的,下面我们一起来看一下Nginx是如 何在Linux平台上搭建的 安装前首先使用yum命令安装、升级所需的程序库 yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss

Mysql各个版本区别及官网下载

本秂侑毒 提交于 2020-03-01 01:49:17
一、Mysql 各个版本区别: 1、 MySQL Community Server 社区版本 ,开源免费,但不提供官方技术支持。 2、 MySQL Enterprise Edition 企业版本 ,需付费,可以试用30天。 3、 MySQL Cluster 集群版 ,开源免费。可将几个MySQL Server封装成一个Server。 4、 MySQL Cluster CGE 高级集群版 ,需付费。 5、 MySQL Workbench (GUI TOOL)一款专为MySQL设计的 ER/ 数据库 建模工具 。它是著名的 数据库设计 工具DBDesigner4的继任者。MySQL Workbench又分为两个版本,分别是社区版(MySQL Workbench OSS)、商用版(MySQL Workbench SE)。 MySQL Community Server 是开源免费的,这也是我们通常用的MySQL的版本。根据不同的操作系统平台细分为多个版本, 二、本文以下载 tar.gz 版本为例演示下载过程: 我们选择GenerallyAvailable(GA)Release 去下载。GA 是指软件的通用版本,一般指正式发布的版本。 Mysql 官网地址: http://www.mysql.com/ 选择 Downloads-->Community-->Mysql Community

Linux saltstack的return和job_cache

大憨熊 提交于 2020-03-01 01:40:20
文章目录 1. SaltStack组件之return 1.1 return流程 2. job cache 2.1 job cache流程 2.2 job管理 1. SaltStack组件之return return组件可以理解为SaltStack系统对执行Minion返回后的数据进行存储或者返回给其他程序,它支持多种存储方式,比如用MySQL、MongoDB、Redis、Memcache等,通过return我们可以对SaltStack的每次操作进行记录,对以后日志审计提供了数据来源。目前官方已经支持30种return数据存储与接口,我们可以很方便的配置与使用它。当然也支持自己定义的return,自定义的return需由python来编写。在选择和配置好要使用的return后,只需在salt命令后面指定return即可。 1.1 return流程 在所有minion上安装Mysql-python模块 [root@master ~]# salt '*' pkg.install MySQL-python 192.168.69.202: ---------- MySQL-python: ---------- new: 1.2.5-1.el7 old: [root@master ~]# salt '*' cmd.run 'rpm -qa|grep MySQL-python' 192.168