在本机创建存储过程没有任何问题,连接到服务器后,执行出现以下问题create PROCEDURE a1()
begin
     select * from users;
end错误码: 1044 
Access denied for user 'root'@'%' to database 'cpc' 
远程创建表都没有问题。在线等。。着急呢。呵呵。

解决方案 »

  1.   

    没有创建存储过程的权限!show grants ;看一下。
      

  2.   

    GRANT SELECT, INSERT, UPDATE, 
    DELETE, CREATE, DROP, 
    RELOAD, SHUTDOWN, PROCESS, 
    FILE, REFERENCES, INDEX, ALTER, 
    SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, 
    LOCK TABLES, EXECUTE, REPLICATION 
    SLAVE, REPLICATION CLIENT ON *.* TO 'root'@'%' IDENTIFIED BY PASSWORD '*23AE809DDACAF96AF0FD78ED04B6A265E05AA257' 
    WITH GRANT OPTION出来这么多然后怎么操作呀??
      

  3.   

    向mysql添加新用户并分配权限
     
     
     bin>mysql -u root
    mysql> grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by ‘连接口令’;权限1,权限2,…权限n代表select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限。
    当权限1,权限2,…权限n被all privileges或者all代替,表示赋予用户全部权限。
    当数据库名称.表名称被*.*代替,表示赋予用户操作服务器上所有数据库所有表的权限。
    用户地址可以是localhost,也可以是ip地址、机器名字、域名。也可以用’%'表示从任何地址连接。
    ‘连接口令’不能为空,否则创建失败。 例如:
    mysql>grant select,insert,update,delete,create,drop on vtdc.employee to [email protected] identified by ‘123′;
    给来自10.163.225.87的用户joe分配可对数据库vtdc的employee表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为123。mysql>grant all privileges on vtdc.* to [email protected] identified by ‘123′;
    给来自10.163.225.87的用户joe分配可对数据库vtdc所有表进行所有操作的权限,并设定口令为123。mysql>grant all privileges on *.* to [email protected] identified by ‘123′;
    给来自10.163.225.87的用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。mysql>grant all privileges on *.* to joe@localhost identified by ‘123′;
    给本机用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。 
     
      

  4.   

    你没有权限啊。你需要在服务器本机登录,这样你的用户就是 root@localhost 而不是现在你用的这个 root@%
    然后再授权
    grant all on *.* to root@%
      

  5.   

    权限问题
    在服务器上的客户端登陆,然后执行:grant all on cpc.* to '帐号'@'客户端所在的机器ip' identified by '密码'
      

  6.   

    grant all on cpc.* to '帐号'@'客户端所在的机器ip' identified by '密码flush privileges;