Nir*_*mal 6 amazon-web-services amazon-rds
我创建了一个带有 SQL Server Express Edition 的 RDS 实例。实例设置一切正常,我也成功连接到它。
但是一旦使用主用户连接,我就无法在服务器上创建任何数据库、模式或表。它一直说用户没有执行操作的权限。
我可能会错过什么?默认情况下,主用户不应该拥有所有权限吗?如果没有,我应该如何进行?
谢谢你的帮助!
这就是我想要运行的:
CREATE TABLE [dbo].[wt_category] (
[sys_id] bigint NOT NULL IDENTITY(1,1) ,
[sys_timestamp] timestamp NOT NULL ,
[country] varchar(5) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
[days] date NOT NULL ,
[pages] varchar(255) COLLATE SQL_Latin1_General_CP1_CI_AS NULL DEFAULT NULL ,
[visits] int NULL DEFAULT NULL ,
[page_impressions] int NULL DEFAULT NULL ,
[visits_w_product] int NULL DEFAULT NULL ,
[products] varchar(255) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
PRIMARY KEY ([sys_id])
)
Run Code Online (Sandbox Code Playgroud)
我收到这个错误:
[错误] 42000 - [SQL Server] 数据库“rdsadmin”中的 CREATE TABLE 权限被拒绝。
该错误消息表明您的用户无权在数据库“rdsadmin”中创建新表。
检查“rdsadmin”数据库是否存在,并且对于您尝试作为其执行命令的用户是否具有正确的权限。
故障排除:
对于 SQL Server,您可能想要这样的东西:
将当前管理员用户添加到 SQL Server Express 2008
CREATE LOGIN [domain\username] FROM WINDOWS;
GO
EXEC sp_addsrvrolemember 'domain\username', 'sysadmin';
GO
Run Code Online (Sandbox Code Playgroud)
对于 MySQL:
这些帐户都没有授予任何数据库的任何特定权限。您应该根据需要明确授予权限。
我通常会通过登录(在终端中或使用像 Sequel Pro 这样的 GUI)并执行所需的权限来做到这一点。在此示例中,我将使用我的“test”用户登录 mysql。
登录后,您可以运行所需的 MySQL 命令:
http://kb.mediatemple.net/questions/788/HOWTO%3A+GRANT+privileges+in+MySQL#dv 或http://library.linode.com/databases/mysql/arch-linux有这样的例子,但这里有一个简单的例子:
CREATE DATABASE testdb;
CREATE USER 'testuser'@localhost IDENTIFIED BY 'CHANGEME';
GRANT ALL PRIVILEGES ON testdb.* TO 'testuser'@localhost;
Run Code Online (Sandbox Code Playgroud)
当然,您必须替换为正确的数据库/用户名/密码(如果 db 或用户已存在,您可以跳过 db/user create 命令)。
您可能只想在 localhost 上授予特权,或者根据您要实现的目标授予不同的特权。
归档时间: |
|
查看次数: |
38550 次 |
最近记录: |