我从/docker-entrypoint-initdb.d中找到了目录,并阅读了的“初始化一个新实例”部分。但是,当我在包含下面的docker-compose up文件的目录中运行docker-compose.yml时,我的数据库没有被初始化。
services:
# Use root/root as MySQL user/password credentials
db:
image: mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_USER: root
我已经阅读了最近的帖子,但是找不到答案。
我想要的是建立创建的数据库,用户和一些其他数据自定义mysql映像。以下是我的Dockerfile(简化版):
FROM mysql:5.7
ENV MYSQL_ROOT_PASSWORD=root
RUN service mysql start && \
mysql -uroot -p$MYSQL_ROOT_PASSWORD -e "CREATE DATABASE mydb;" && \
mysql -uroot -p$MYSQL_ROOT_PAS
我正在把所有的东西从一个非常旧的生产服务器转移到一个新的服务器上。我现在正尝试将MySQL数据库复制到新的系统中。我对MySQL的知识非常有限。首先,一些版本信息:
旧服务器:
$ mysql -V
mysql Ver 14.12 Distrib 5.0.32, for pc-linux-gnu (i486) using readline 5.2
新服务器:
$ mysql -V
mysql Ver 15.1 Distrib 10.3.22-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
在旧服务器上,我首先对所有数据库进
我在安装MySQL的分区上空间不足,所以我尝试将我最大的数据库移动到一个新的分区中,并在数据目录中对其进行符号链接。当我尝试使用这个数据库时,我会得到以下错误
mysql> use fb20;
Database changed
mysql> show tables;
ERROR 1018 (HY000): Can't read dir of './fb20/' (errno: 13)
我检查过是否启用了符号链接:
mysql> show variables like 'have_symlink';
+---------------+--
启动mysql容器
$ docker run --name mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql
连接到MySQL并手动创建新数据库
$ docker run -it --link mysql:mysql --rm mysql sh -c 'exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot -p"$MYSQL_ENV_MYSQL_ROOT_PASSWORD"'
链
我对mysql用户权限进行了更改,由于某种莫名其妙的原因,除了mysql安装数据库之外,我再也看不到所有的数据库了。我不太明白为什么我看不到这些数据库,并且正在寻找关于我应该从哪里开始寻找哪里的权限可能已经搞砸了的输入。这是一个我不太熟悉的mysql层。我知道DB是存在的,但出于某种奇怪的原因,我不能将它们看作root。
mysql> SHOW GRANTS FOR 'root'@'localhost';
+------------------------------------------------------------------------+
|
所以我有一个两难的选择。我从另一位开发人员手中接过工作,有一个机器,我只有根用户才能访问它,我需要从它下载MySQL数据库。因此,我使用根目录,在命令行中输入mysql并获取:
Access denied for user 'root'@'localhost' (using password: NO)
然后,我尝试使用mysql --user=root --password={myrootpassword},它显示:
Access denied for user 'root'@'localhost' (using password
在启用root时,我希望将所有特权授予mysql数据库中的skip-grant-tables用户。
我怎么能这么做?
禁用skip-grant-tables选项时,由于以下错误,无法登录到mysql:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
当我运行此命令时,它会影响零行:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost';
另外:
FLUSH PRIV
我正在尝试连接到由设置的MySQL数据库,该数据库是在OSX上使用设置的。使用以下代码:
MYSQL mysql;
mysql_init(&mysql);
if(!mysql_real_connect(&mysql,"localhost","root","",NULL,0,NULL,0))
{
printf("Failed to connect to database: Error (%d): %s",mysql_errno(&mysql),mysql_error(&mysql));
}
e
Symfony连接数据库(和php容器),但当我运行phpunit时,返回错误SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known。我的项目中哪里有错误?
在我的projekt docker-compose.yml文件中,如下所示:
services:
db:
image: mysql:5.7
environment:
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSW
我想要创建一个简单的容器,其中包含一个带有初始化数据库的MySQL服务器。我的Dockerfile当前如下所示:
FROM ubuntu:16.10
RUN apt-get update
# install MySQL; root user with no password
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get install -y mysql-server mysql-client
RUN service mysql start
RUN mysqladmin -u root create mydb
CMD [ "bash
我正在尝试在我的主机系统中使用MySQL docker容器,以使安装和配置过程变得更容易、更快。
因此,我从上提取了一张图片
然后根据这个镜像启动容器..
容器启动正常,但是我无法从我的主机系统连接到这个数据库(如果我尝试从容器连接,一切都是正常的)。它失败,并显示一条消息:
ERROR 1130 (HY000): Host '<here goes my IP>' is not allowed to connect to this MySQL server
因此,据我所知,我的root用户没有足够的权限。
我已经进入我的容器:
docker exec -it mys
我在Mac上,刚刚用MacPorts安装了mysql5。
然后我成功地运行了:
sudo /opt/local/lib/mysql5/bin/mysql_install_db --user=mysql
我可以启动服务器并以“root”身份连接,但是我不能创建任何数据库。
$ mysql5 -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.1.61 Source distribut