@echo off
mysqladmin -u root --password=admin CREATE TESTDB
mysqladmin -u root --password=admin DROP USER test@"%"
mysqladmin -u root --password=admin CREATE USER test@"%" IDENTIFIED BY test
mysqladmin -u root --password=admin GRANT ALL ON test TO test@'%'
mysql -u root --password=admin TESTDB< c:\test.sql
请指教!!
mysqladmin -u root --password=admin CREATE TESTDB
mysqladmin -u root --password=admin DROP USER test@"%"
mysqladmin -u root --password=admin CREATE USER test@"%" IDENTIFIED BY test
mysqladmin -u root --password=admin GRANT ALL ON test TO test@'%'
mysql -u root --password=admin TESTDB< c:\test.sql
请指教!!
解决方案 »
- pgpoolⅡ提供给前端的Ip port database user password JDBC怎么连接
- 数据库的备份与恢复
- mysql行锁的问题
- DATASTAGE调用greenplum的函数
- 求一mysql存储过程,实现id、name转换
- 请问各位大虾,mysqldump发生了什么错误?
- mysql怎么增加用户和修改root密码啊
- MySql中文全文检索的问题
- 关于MYSQL和DRBD的应用问题
- c#连接云数据库MYSQL时总是报错 其他信息: 给定关键字不在字典中。
- php调用mysql的存储过程.报mysql server has gone away错误
- 关于insert语句的兼容问题
------->mysqladmin -u root --password=admin CREATE DATABASE TESTDB
mysqladmin -u root --password=admin CREATE DATABASE TESTDB
mysqladmin -u root --password=admin DROP USER 'test'@'%'
mysqladmin -u root --password=admin CREATE USER 'test'@'%' IDENTIFIED BY 'test'
mysqladmin -u root --password=admin GRANT ALL ON test.* TO 'test'@'%'
mysql -u root --password=admin TESTDB < c:\test.sql
tabase exists'(创建名为database的数据库,所以这里不用加database关键字)
Dropping the database is potentially a very bad thing to do.
Any data stored in the database will be destroyed.Do you really want to drop the 'USER' database [y/N] y
Database "USER" dropped(把USER关建字认成了数据库名)
mysqladmin: Unknown command: ''test'@'''
mysqladmin: Unknown command: ''test'@'''
mysqladmin: Unknown command: 'GRANT'
ERROR 1049 (42000): Unknown database 'TESTDB'
mysqladmin -u root --password=admin CREATE TESTDB
mysql -u root -p admin -e 'DROP USER "test"@"%"'
mysql -u root -p admin -e 'CREATE USER "test"@"%" IDENTIFIED BY "test"'
mysql -u root -p admin -e 'GRANT ALL ON TESTDB.* TO "test"@"%"'
mysql -u root -p admin TESTDB < c:\test.sql
@echo off
mysql -u root --password=admin < c:\fujitsu.sql
mysql -u root --password=admin -e "DROP USER 'fujitsu'@'%'"
mysql -u root --password=admin -e "CREATE USER 'fujitsu'@'%' IDENTIFIED BY 'fujitsu'"
上面这条语句的执行结果 host成为了空串,并不是%,如把这句单独执行,是正确的执行结果。
mysql -u root --password=admin -e "GRANT ALL ON fujitsu.* TO 'fujitsu'@'%'"
测试没有问题啊[code=BatchFile]C:\Program Files\MySQL\MySQL Server 5.1\bin>mysql -u root --password=123 -e "CRE
ATE USER 'fujitsu'@'%' IDENTIFIED BY 'fujitsu'"C:\Program Files\MySQL\MySQL Server 5.1\bin>[/code]mysql> select user,host from mysql.user;
+---------+-----------+
| user | host |
+---------+-----------+
| fujitsu | % |
...
| root | localhost |
+---------+-----------+
5 rows in set (0.00 sec)mysql>
单独在提示符下执行那一条命令是正确的,或者写在外部文件中如下执行也是可以的。
mysql -u root --password=admin < createuser.sql
但是如果把上面的语句放在一起执行,会创建成
+---------+-----------+
| user | host |
+---------+-----------+
| fujitsu | |
真的很怪异
如下,没什么区别,因为在dos命令行执行的语句就是从我的批处理直接拷的。
CREATE USER 'fujitsu'@'%' IDENTIFIED BY 'fujitsu'
环境 xp sp3 mysql-5.1.37-win32
@echo off
mysql -u root --password=admin < c:\db.sql(导出的数据库sql文(数据库名testDB))
mysql -u root --password=admin -e "DROP USER 'test'@'%'"
mysql -u root --password=admin -e "CREATE USER 'test'@'%' IDENTIFIED BY 'test'"(此句错误,%变成了"")
mysql -u root --password=admin -e "GRANT ALL ON testDB.* TO 'test'@'%'"(上面创建用户时出错,所以授权也不成功)成功的bat文件,我把创建用户的命令提出到createuser.sql文件中。内容如下
CREATE USER 'test'@'%' IDENTIFIED BY 'test'然后在我的主批处理文件import.bat中如下内容
@echo off
mysql -u root --password=admin < c:\db.sql
mysql -u root --password=admin -e "DROP USER 'test'@'%'"
mysql -u root --password=admin < createuser.sql
mysql -u root --password=admin -e "GRANT ALL ON testDB.* TO 'test'@'%'"这样可以正确创建test@%用户,并授权成功。
改成
mysql -u root --password=admin -e "CREATE USER 'test'@'%%' IDENTIFIED BY 'test'"