[root@cp ~]# mysql> CREATE DATABASE foo;
[root@cp ~]# mysql> GRANT ALL ON foo.* TO root@'my home ip' IDENTIFIED BY 'aron1252';
[root@cp ~]# mysql> update user set Host='my home ip' where user='webadmin';
[root@cp ~]# GRANT ALL ON foo.* TO root@'localhost
我不能再在我的码头容器中使用MySQL了:
root@mysql-container:/# mysql -uroot -proot
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (111)
mysqld正在运行:
root@mysql-spirit-ssl:
我丢失了根密码并试图重置它。我有超多权限。在阅读其他页面时,我正在使用跳过授予表选项尝试以下方法:
$ sudo /etc/init.d/mysql stop
[ ok ] Stopping mysql (via systemctl): mysql.service.
$ sudo mysqld --skip-grant-tables &
[1] 17849
$ mysql -u root mysql
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysql
还原我的MySQL表有问题。当我试图编写下面的命令时,我得到了以下错误→错误1044 (42000):拒绝用户moodle@‘localhost’到数据库'moodle‘的访问
root@ubuntu:/var/www# mysql -u moodle -p moodle < ./backup/moodle.sql
ERROR 1044 (42000) at line 45: Access denied for user 'moodle'@'localhost' to database 'moodle'
用户"moodl
我确信这是一个重复的主题,但我无法完成:我喜欢在运行时将我的数据库转储恢复到MySQL容器,而不修改docker-come.yml文件。
Dockerfile
FROM php:5.4.45-apache
RUN apt-get update
RUN docker-php-ext-install mysql mysqli
docker-compose.yml
version: '2'
services:
php_service:
container_name: my_php
# Use Dockerfile in this dir to build the
这就是我如何直接从MySQL创建一个经过授权的、所有特权DB用户和相应的名称相同的DB实例的方法:
echo "CREATE USER "${domain}"@"localhost" IDENTIFIED BY \"${dbup}\";" | mysql -u root -p"${dbrp}"
echo "CREATE DATABASE ${domain};" | mysql -u root -p"${dbrp}"
echo "GRANT ALL PRIVILEGES ON
我试图远程访问MySQL,因为MySQL只在本地工作。
我遵循了这个指南http://www.cyberciti.biz/tips/how-do-i-enable-remote-access-to-mysql-database-server.html
我在教程中使用了这样的命令:
mysql> update user set Host='202.54.10.20' where user='root';
我想这把当地的mysql搞砸了。
现在我无法登录:
$ mysql -u root -p
我知道这个错误:
拒绝用户'root'@'
我意外地删除了我的MySQL根用户的一些特权,包括修改表的能力。是否可以通过某种方法将此用户恢复到其原始状态(具有所有权限)?
UPDATE mysql.user SET Grant_priv = 'Y', Super_priv = 'Y' WHERE User = 'root';
# MySQL returned an empty result set (i.e. zero rows).
FLUSH PRIVILEGES ;
# MySQL returned an empty result set (i.e. zero rows).
#10
我在MySQL工作。为了使我的数据库更安全,我创建了新用户,而不是删除具有所有特权的'root‘用户。我认为我没有给予新用户完全的特权。这就是为什么每当我试图更新数据库中的表时,它都会出现错误。
UPDATE command denied to user 'crm_user'@'localhost' for table
如果我失去了超级用户(在我的例子中是root用户),我如何检索或获得所有特权来控制我的DB。DB安装在我的VPS上,所以我可以完全控制任何需要做的事情,但是我不知道该做什么。请帮帮忙。谢谢
如何删除名称中包含元字符的数据库。数据库名为#mysql50#lost+found。
我以root用户的身份在mysql中进行连接。我试图将反斜杠放在shell命令中:
MariaDB [(none)]> DROP DATABASE '\#mysql50\#lost\+found' ;
ERROR 1064 (42000): You have an error in your SQL syntax;
不起作用
我已经使用--skip-grant-tables选项登录到MySQL。但我不知道如何将所有权限返回给root用户。
我试过了:
GRANT ALL PRIVILEGES ON * . * TO 'root'@'localhost';
MySQL说:
# 1290 - The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
正在尝试:
GRANT ALL PRIVILEGES ON * . * TO 'root
我试图通过一个laravel项目的终端创建一个数据库,它告诉我数据库是创建的,但是当我去phpMyAdmin时,我找不到它。
mysql> create database house
-> ;
Query OK, 1 row affected (0.06 sec)
mysql> SHOW DATABASES;
ERROR 1449 (HY000): The user specified as a definer ('mysql.infoschema'@'localhost') does
not exist
我使用MAMP,它不工作,所以我使
我正在努力将一个需要MySQL的项目迁移到另一个服务器上。我正在寻找一种将用户创建的所有数据库迁移到另一台服务器的方法。首先,我尝试只移动一个数据库,但它不起作用。
企图:
mysqldump db_name | mysql -h root@migration_server.com target_db(same name);
错误:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the rig
问题:如何从dev系统导出数据库内容(包括触发器)并将数据导入到活动服务器,而不会在触发触发器时遇到错误1449?
在最近的一个php项目中,我正在广泛使用mysql触发器,但在将数据库从dev部署到活动系统时遇到了问题。
例如,我的一个触发器定义如下(使用mysqldump生成的输出)
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER update_template BEFORE UPDATE ON template
FOR EACH ROW BEGIN
SET ne
我刚买了一台新的macbook pro (OS X 10.8.2),正在尝试在上面安装mysql。到目前为止,我已经能够安装它,但我无法获得我的root用户访问权限(或任何用户)。我计划在Python上使用它,在我的另一台计算机上,我只使用MYSQL (没有MAMP),而且我更喜欢保持这种方式。
作为参考,我做了以下工作:
$ alias mysql=/usr/local/mysql/bin/mysql $ sudo /Library/StartupItems/MySQLCOM/MySQLCOM start $ alias mysqladmin=/usr/local/mysql/bin/mys
我无意中删除了用户root@localhost,这是我后来发现mysql需要工作的地方,现在,我无法使用root登录,即使密码是正确的。我尝试运行mysql ins模式:
/usr/bin/mysqld_safe --skip-grant-tables
然后以root用户身份登录,不使用密码,然后进入mysql数据库,在该数据库中我应该执行:
create user root@localhost;
然后:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' with grant option;
commit;
FL