小编Rol*_*DBA的帖子

MS SQL Server 中对应的 MySQL TimeStamp 是什么?

我需要在表中插入信息时自动创建时间戳。mySQL 具有时间戳,但 MS SQL Server 时间戳与 mySQL 不对应。有没有其他办法?

mysql

3
推荐指数
1
解决办法
5283
查看次数

如何让 MySQL 使用函数返回的值作为默认值?

我有一个预先存在的表,其中有一列可以保存 UUID。

我希望能够定义一个默认值,以便(来自旧系统)进入的新行仍将通过该UUID()函数获得定义的 UUID -- 是否可以将列的默认值配置为由UUID(以类似于UNIX_TIMESTAMP()在 phpMyAdmin 中的方式)

mysql mysql-5 phpmyadmin default-value

3
推荐指数
1
解决办法
1460
查看次数

“线程”在“线程检查点”上下文中是什么意思?

以下摘录来自Oracle 概念。也许这是一个愚蠢的问题,但我真的需要你的帮助来理解它。

我的问题是:

  • 上下文线程检查点中的线程是什么意思?
  • 这是否意味着重做日志线程(属于特定实例的所有重做日志文件)?
  • 什么某个目标的手段?

谢谢大家!英语不是我的母语,我觉得完全理解这一点有点困难。

When Oracle Database Initiates Checkpoints 

The checkpoint process (CKPT) is responsible for writing checkpoints to the data file  
headers and control file. Checkpoints occur in a variety of situations. For example,  
Oracle Database uses the following types of checkpoints: 

?   Thread checkpoints 
    ^^^^^^
    The database writes to disk all buffers modified by redo in a specific thread before  
                                                             ^^^^^^^^^^^^^^^^^^^^
    a certain target. The set of …
Run Code Online (Sandbox Code Playgroud)

oracle checkpoint

3
推荐指数
1
解决办法
1393
查看次数

组合或分离表:文件和消息?

这是为了在我的客户和我之间在线共享文件而设计此表的最佳方法,还是应该将 Message 表和 File 表分开或将它们组合在一起?

组合表方式: FILE表

  • ID
  • 顾客ID
  • FilePath(来自双方的文件路径:客户和我)
  • 内容(消息)
  • 标记(已读/未读 + ISent/CustomerSent)
  • 状态(已查看、已审核、已接受等)
  • 时间戳(文件的当前日期时间已更改)
  • CreationDate(创建文件的日期)
  • Dateline(设置文件对应动作的截止日期)

优点:1张单人桌

缺点:共享同一个表的 2 个操作,在每条记录中,“FilePath”或“Content”可以为空,以防客户希望通过编写消息而没有附件 (FilePath) 或客户上传任何文件而没有任何消息(内容)写的。

2 表方法:

文件表

  • ID
  • 顾客ID
  • 姓名
  • 类型
  • 尺寸
  • 数据
  • 已创建

留言表

  • ID
  • 顾客ID
  • 信息
  • 依恋
  • 已创建

优点:没有空字段

缺点:它们在这两个表中的用途相同,但一个侧重于消息,其他侧重于文件。

你会推荐什么?

database-design

3
推荐指数
1
解决办法
184
查看次数

MySQL / Percona Server 插入性能很差

我正在从 Ubuntu 服务器安装运行 Percona-Server 实例。我正在使用一个需要访问这个数据库的应用程序,它的性能非常差。一旦建立了数据库,应用程序就会进入(安装时)并创建模式。它将所有内容默认为 MyISAM,但是我已将表引擎转换回 InnoDB。我遇到的问题是插入性能非常差。这个应用程序的写入量非常大,似乎它一次将每一行 1 写入磁盘,而不使用任何类型的缓冲区,但是我不确定如何检查或验证这一点。即使从其中一个表中选择(*)也需要 2.4 秒,并且只有 163,000 行。我有点不知所措,我还能做什么。

服务器有 8GB 的​​内存,在发生这种情况时 CPU 几乎完全空闲。

我的.cnf:

[mysql]

# CLIENT #
port                           = 3306
socket                         = /var/run/mysqld/mysqld.sock

[mysqld]

# GENERAL #
user                           = mysql
default_storage_engine         = InnoDB
socket                         = /var/run/mysqld/mysqld.sock
pid_file                       = /var/run/mysqld/mysqld.pid

# MyISAM #
key_buffer_size                = 32M
myisam_recover                 = FORCE,BACKUP

# SAFETY #
max_allowed_packet             = 16M
max_connect_errors             = 1000000
skip_name_resolve
sql_mode                       = STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ONLY_FULL_GROUP_BY
sysdate_is_now                 = 1
innodb                         = FORCE
innodb_strict_mode             = 1

# DATA STORAGE # …
Run Code Online (Sandbox Code Playgroud)

mysql innodb performance percona-server xtradb

3
推荐指数
1
解决办法
8901
查看次数

MySQL 5.6 失败

我在下面RPM_UPGRADE_HISTORY/var/lib/mysql

MySQL RPM upgrade to version 5.6.10-1.linux_glibc2.5
'pre' step running at Fri Mar 15 15:41:26 EDT 2013

ERR file(s):
-rw-r----- 1 mysql root 1725 2013-03-15 13:45 /var/lib/mysql/mysql.err
Run Code Online (Sandbox Code Playgroud)

我检查了错误文件以找到以下信息:

2013-03-15 15:43:22 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2013-03-15 15:43:22 11993 [Note] Plugin 'FEDERATED' is disabled.
2013-03-15 15:43:22 11993 [Note] InnoDB: The InnoDB memory heap is disabled
2013-03-15 15:43:22 11993 [Note] InnoDB: Mutexes and rw_locks use …
Run Code Online (Sandbox Code Playgroud)

mysql mysql-5.6

3
推荐指数
1
解决办法
3万
查看次数

我应该在 mysql 的从属设备中禁用触发器、时间戳吗?

我们正在使用 MySQL。我们有一个 master,最终会有 2 个 slave。当某些表中的数据发生变化时,数据库中有触发器会执行。我想知道是否禁用奴隶中的触发器。在我看来,我应该。似乎应该在从站中禁用时间戳之类的东西,否则从站上的数据将与主站上的数据不同。

我不是 DBA,我是开发人员。我们公司没有 DBA,所以运营管理员和我正在解决这个问题。我们已经设置并复制了主站和一个从站,我们在从站上遇到了重复输入错误。

我们正在考虑不要因为重复的复制错误而停止复制,如这篇文章所示:http : //www.ducea.com/2008/02/13/mysql-skip-duplicate-replication-errors/。我们不知道这是否是个好主意。我确实觉得这掩盖了问题,但我们都不知道如何解决问题。

如果我们应该禁用触发器和/或设置从属设备不插入时间戳,我们该怎么做?还是将 db 建立为从站会自动执行这些操作?

mysql replication trigger timestamp mysql-5.5

3
推荐指数
1
解决办法
3837
查看次数

从多个字段与其他表中的选择子查询匹配的表中删除

我想删除表中的一个条目,其中多个字段与另一个选择子查询的结果相匹配,该查询从另一个表中获取数据。

这是我到目前为止所拥有的,尽管它不起作用:

DELETE FROM table1
WHERE table1.id IN
   (SELECT id
   FROM table1 a JOIN table2 b
   ON a.field1 = b.field1
   AND a.field2 = b.field2
   AND a.field3 = b.field3
   AND b.id = ?
   )
Run Code Online (Sandbox Code Playgroud)

mysql delete subquery select

3
推荐指数
1
解决办法
3万
查看次数

信息架构未显示可靠信息?

我目前正在从 SQL Server 迁移到 MySQL。当我尝试匹配行数时,我会查询 information_Schema.tables。我注意到迁移的信息和源信息之间存在一些差异。

但是,我做了一个select count(*) from table;给了我正确的行数

为什么information_Schema.tables.table_rows和之间有区别select count(*) from table

mysql innodb information-schema

3
推荐指数
1
解决办法
1618
查看次数

InnoDB:错误:找不到表“mysql”.“innodb_table_stats”

我遇到了同样的错误,尽管我正在运行具有 3 个节点的 galera 集群。我尝试按照InnoDB的说明进行操作:错误:升级到 mysql 5.6 后找不到表“mysql”.“innodb_table_stats”,但是当我进入运行 create 语句的步骤时,出现以下错误:

Error Code: 1813. Tablespace for table '`mysql`.`innodb_index_stats`' exists.
Please DISCARD the tablespace before IMPORT.
Run Code Online (Sandbox Code Playgroud)

这对我来说毫无意义,当我尝试使用

drop tablespace `innodb_index_stats`;
Run Code Online (Sandbox Code Playgroud)

我收到一个 SQL sysntax 错误。

mysql innodb replication mariadb galera

3
推荐指数
1
解决办法
2万
查看次数