Articles of mysql

无法从主机访问mysql docker容器

我有一个运行在官方mysql容器( https://registry.hub.docker.com/_/mysql/ )上的docker 1.6.0的debian服务器。 我使用一个相当基本的防火墙configuration,其中所有端口都closures,除了SSH,HTTP和NTP( http://pastebin.com/raw.php?i=dFUcJWxy )。 当我尝试连接到我的mysql数据库时: mysql -u root -h 172.17.0.3 -p 我收到以下错误信息: ERROR 2003 (HY000): Can't connect to MySQL server on '172.17.0.3' (110) 端口3306被过滤: nmap -p 3306 172.17.0.3 PORT STATE SERVICE 3306/tcp filtered mysql …当我打开主机上的端口3306我可以访问到MySQL服务器。 如何在不打开主机端口3306的情况下访问mysql服务器容器? 进一步的信息可以帮助: 启动容器的任务非常简单: – name: Mysql container docker: name: mysql image: mysql:5.7 state: started volumes: – /var/container_data/mysql:/var/lib/mysql […]

MySQL中具有时区的date/时间究竟如何工作?

我的理解是: 一切都是UTC内部 date显示在当前会话的@@ session.time_zone时区中 如果我做INSERT +02:00 TZ设置并插入2015-05-15 10:54它parsing并存储为2015-05-15 08:54 UTC。 当我切换到UTC TZ时,现在应该显示2015-05-15 08:54 发生什么反而是它仍然显示2015-05-15 10:54 我究竟做错了什么? 或者这是预期的? 我在MySQL中阅读了很多关于date时间的文章,但是我仍然不确定。

接收到这个mysqldiff错误的下一步是什么?

我有一个MySQL数据库已经在生产和保存,并恢复了几次phpmyadmin和mysqldump /恢复。 我怀疑“生产活动”在这个数据库结构和从定义SQL的原始模式创build的任何新的“原始”数据库之间引入了一些差异。 当我尝试使用mysqldiff比较生产数据库和全新的实例时,我得到: $ mysqldiff –server1=root@localhost dev_si_brand_new:prod_si # server1 on localhost: … connected. # Comparing `dev_si_brand_new` to `prod_si` [FAIL] # Object definitions differ. (–changes-for=server1) # — `dev_si_brand_new` +++ `prod_si` @@ -1 +1 @@ -CREATE DATABASE `dev_si_brand_new` /*!40100 DEFAULT CHARACTER SET latin1 */ +CREATE DATABASE `prod_si` /*!40100 DEFAULT CHARACTER SET latin1 */ Compare failed. One […]

MySQL – 无法从本地networking连接,但可以从任何其他IP连接

面对一个非常奇怪的问题。 原来的要求是有一个开发服务器,可以从我们的办公室在瑞典和印度访问。 在我们的斯德哥尔摩服务器上,我创build了一个新的Ubuntu VM(Ubuntu 15.04,64位),并给它一个IP 192.168.3.127。 我安装了MySQL(5.6.24),并将/etc/mysql/mysql.conf.d/mysqld.cnf中的bind-address修改为0.0.0.0 我在路由器上设置端口转发,将3306转发到192.168.3.127,然后使用创build一个新的数据库 CREATE DATABASE mydatabase; 我为用户授予权限 GRANT ALL PERMISSIONS ON mydatabase.* to 'someuser'@'%' IDENTIFIED BY 'supersecretpassword!'; 现在,开发人员可以使用瑞典办事处的公共IP从印度连接,但是瑞典办事处的开发人员无法连接到服务器。 他们可以使用本地IP(192.168.3.127)连接到它,但不使用公共IP。 我不知道什么是错的。 有任何想法吗? 维韦克

使用mysqldump进行备份并将其放到另一台服务器上(Bash)

我正在使用cron作业每小时进行一次备份,现在我想在默认情况下将这些备份放到另一台服务器上。 我的脚本如下: mysqldump -u db_user -p db_password db_name| gzip > /current/path/for/backups/backup_$(date).sql.gz 我能做些什么来改变另一台服务器上新path的当前path?

无法连接到MySQL使用SSL与编译的PHP

现在我已经把我的头撞到墙上了几天了。 我只是无法弄清楚。 我用plesk 12和apache 2.2运行Ubuntu 12。 我已经尝试编译PHP 5.6.10和PHP 5.6.11与这两个选项的变种: ./configure –prefix=/opt/php-5.6.11-apache –with-config-file-path=/opt/php-5.6.11-apache/etc –disable-debug –enable-roxen-zts –enable-short-tags –enable-magic-quotes –enable-sigchild –enable-libgcc –with-libdir=/lib/x86_64-linux-gnu –with-openssl –with-openssl-dir=/usr/bin –with-zlib –enable-bcmath –with-bz2 –enable-calendar –enable-ctype –with-curl=/usr/bin –with-cdb –enable-inifile –enable-flatfile –enable-dba –with-xsl –enable-dom –enable-exif –enable-filter –enable-ftp –with-gd –with-png-dir=/usr –with-jpeg-dir=/usr –enable-gd-native-ttf –with-freetype-dir=/usr –with-gettext –with-gmp –enable-hash –with-iconv –with-imap –with-imap-ssl –with-kerberos –with-ldap –enable-mbstring –enable-mbregex –enable-mbregex-backtrack –with-mcrypt=/usr –with-mhash –with-mysql […]

无法连接到AWS RDS实例

我已经build立了一个AWS RDS实例。 我使用“端点”作为主机名来build立通过MySQL工作台的连接。 但连接失败。 我坐在一个公司的防火墙后面,按照在线工具,端口3306,我用来连接的端口是closures的。 这可以成为我无法连接的原因吗?

在FreeBSD上运行MySQL的SSH隧道(Heidi SQL)

我正在尝试使用SSH隧道来访问运行在FreeBSD 10.1服务器上的MySQL服务器。 这些尝试是用Heidi SQL( http://www.heidisql.com/ )完成的。 FreeBSD服务器上的SSH守护进程不允许rootlogin。 我们必须首先使用轮组的帐户成员,然后SU才能成为根。 我想问题是:SSH守护进程是否需要允许rootlogin才能连接到MySQL服务器? 因为不pipe我尝试什么,MySQL服务器都在响应“访问被拒绝”。 HeidiSQL输出: /* [SRV03 Live (SSH)] Connection to 127.0.0.1 closed at 2015-07-16 13:20:00 */ /* Connecting to 127.0.0.1 via MySQL (SSH tunnel), username ******, using password: No … */ /* Attempt to create plink.exe process, waiting 4s for response … */ /* C:\Program Files\Putty\plink.exe -ssh [email protected] […]

拒绝特定的主机访问特定的数据库在MySQL

我们有一个生产MySQL服务器,具有以下资助: mysql> show grants for the_db; +————————————————————————————————————+ | Grants for db_user@% | +————————————————————————————————————+ | GRANT USAGE ON *.* TO 'db_user'@'%' IDENTIFIED BY PASSWORD '*A236932DB5549260BDC088C4BC2F0C6DB04424D7' | | GRANT ALL PRIVILEGES ON `xydb`.* TO 'db_user'@'%' | | GRANT SELECT ON `xyie-db`.* TO 'db_user'@'%' | | GRANT SELECT ON `supportdb`.* TO 'db_user'@'%' | | GRANT SELECT ON `xbs`.* […]

在一个驱动器上分布一个表的分区

有近10亿行,我们必须在SSD中拆分单独的分区,每个SSD中有大约4个分区。 表的当前模式: CREATE TABLE IF NOT EXISTS `a` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `special_key` varchar(20) NOT NULL DEFAULT '0', `data1` varchar(20) NOT NULL, `data2` varchar(20) NOT NULL, `updated` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`,`special_key`), UNIQUE KEY `special_key` (`special_key`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=4 PARTITION BY KEY (special_key) PARTITIONS 12; 如果我们在开始分区的时候这样做了,那么这个命令看起来像这样: […]