grantinsert,delete,update,select," />
当前位置:文档之家› mysql授权用户远程链接详解

mysql授权用户远程链接详解

mysql授权用户远程链接详解
mysql授权用户远程链接详解

https://www.doczj.com/doc/88872369.html,/archives/265

mysql>GRANT ALL PRIVILEGES ON *.* TO username@"%" IDENTIFIED BY

'your-user-password' WITH GRANT OPTION;

其中username为用户名,your-user-password为密码

这只是针对已存在的用户授权。

>grant insert,delete,update,select,drop,create on Test.* to Jacky@"%" identified by "pwd";

MySQL修改root密码的各种方法整理

整理了以下四种在MySQL中修改root密码的方法,可能对大家有所帮助!

方法1:用SET PASSWORD命令

mysql -u root

mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass'); 方法2:用mysqladmin

mysqladmin -u root password "newpass"

如果root已经设置过密码,采用如下方法

mysqladmin -u root password oldpass "newpass"

方法3:用UPDATE直接编辑user表

mysql -u root

mysql> use mysql;

mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root';

mysql> FLUSH PRIVILEGES;

在丢失root密码的时候,可以这样

mysqld_safe --skip-grant-tables&

mysql -u root mysql

mysql> UPDATE user SET password=PASSWORD("new password") WHERE user='root';

mysql> FLUSH PRIVILEGES;

https://www.doczj.com/doc/88872369.html,/wz/article/14/21/2006/7379.htm

向MySQL增加新用户权限

不同的方法增加用户:通过使用GRANT语句或通过直接操作MySQL授权表。比较好的方法是使用GRANT语句,因为他们是更简明并且好像错误少些。

下面的例子显示出如何使用mysql客户安装新用户。这些例子假定权限根据以前的章节描述的缺省被安装。这意味着为了改变,你必须在mysqld正在运行同一台机器上,你必须作为MySQL root用户连接,并且root用户必须对mysql数据库有insert权限和reload管理权限。另外,如果你改变了root用户口令,你必须如下的mysql命令指定它。

你可以通过发出GRANT语句增加新用户:

shell> mysql --user=root mysql

mysql> GRANT ALL PRIVILEGES ON *.* TO monty@localhost

IDENTIFIED BY 'something' WITH GRANT OPTION;

mysql> GRANT ALL PRIVILEGES ON *.* TO monty@"%"

IDENTIFIED BY 'something' WITH GRANT OPTION;

mysql> GRANT RELOAD,PROCESS ON *.* TO admin@localhost;

mysql> GRANT USAGE ON *.* TO dummy@localhost;

这些GRANT语句安装3个新用户:

monty

可以从任何地方连接服务器的一个完全的超级用户,但是必须使用一个口令('something'做这个。注意,我们必须对monty@localhost和monty@"%"发出GRANT语句。如果我们增加localhost条目,对localhost的匿名用户条目在我们从本地主机连接接时由mysql_install_db创建的条目将优先考虑,因为它有更特定的Host字段值,所以以user表排列顺序看更早到来。

admin

可以从localhost没有一个口令进行连接并且被授予reload和process管理权限的用户。这

允许用户执行mysqladmin reload、mysqladmin refresh和mysqladmin flush-*命令,还有mysqladmin processlist。没有授予数据库有关的权限。他们能在以后通过发出另一个GRANT 语句授权。

dummy

可以不用一个口令连接的一个用户,但是只能从本地主机。全局权限被设置为'N'--USAGE 权限类型允许你无需权限就可设置一个用户。它假定你将在以后授予数据库相关的权限。你也可以直接通过发出INSERT语句增加同样的用户存取信息,然后告诉服务器再次装入授权表:

shell> mysql --user=root mysql

mysql> INSERT INTO user V ALUES('localhost','monty',PASSWORD('something'),

'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y')

mysql> INSERT INTO user V ALUES('%','monty',PASSWORD('something'),

'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y')

mysql> INSERT INTO user SET Host='localhost',User='admin',

Reload_priv='Y', Process_priv='Y';

mysql> INSERT INTO user (Host,User,Password)

V ALUES('localhost','dummy','');

mysql> FLUSH PRIVILEGES;

取决于你的MySQL版本,对上述,你可能必须使用一个不同数目'Y'值(在3.22.11以前的版本有更少的权限列)。对admin用户,只用在3.22.11开始的版本具有的更加可读的INSERT 扩充的语法。

注意,为了设置一个超级用户,你只需创造一个user表条目,其权限字段设为'Y'。不需要db或host表的条目。

在user表中的权限列不是由最后一个INSERT语句明确设置的(对dummy用户),因此那些列被赋予缺省值'N'。这是GRANT USAGE做的同样的事情。

下列例子增加一个用户custom,他能从主机localhost、server.domain和https://www.doczj.com/doc/88872369.html,连接。他只想要从localhost存取bankaccount数据库,从https://www.doczj.com/doc/88872369.html,存取expenses数据库和从所有3台主机存取customer 数据库。他想要从所有3台主机上使用口令stupid。

为了使用GRANT语句设置个用户的权限,运行这些命令:

shell> mysql --user=root mysql

mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP

ON bankaccount.*

TO custom@localhost

IDENTIFIED BY 'stupid';

mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP

ON expenses.*

TO custom@https://www.doczj.com/doc/88872369.html,

IDENTIFIED BY 'stupid';

mysql> GRANT SELECT,INSERT,UPDA TE,DELETE,CREATE,DROP

ON customer.*

TO custom@'%'

IDENTIFIED BY 'stupid';

通过直接修改授权表设置用户权限,运行这些命令(注意,在结束时FLUSH PRIVILEGES):

shell> mysql --user=root mysql

mysql> INSERT INTO user (Host,User,Password)

V ALUES('localhost','custom',PASSWORD('stupid'));

mysql> INSERT INTO user (Host,User,Password)

V ALUES('server.domain','custom',PASSWORD('stupid'));

mysql> INSERT INTO user (Host,User,Password)

V ALUES('https://www.doczj.com/doc/88872369.html,','custom',PASSWORD('stupid'));

mysql> INSERT INTO db

(Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,

Create_priv,Drop_priv)

V ALUES

('localhost','bankaccount','custom','Y','Y','Y','Y','Y','Y');

mysql> INSERT INTO db

(Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,

Create_priv,Drop_priv)

V ALUES

('https://www.doczj.com/doc/88872369.html,','expenses','custom','Y','Y','Y','Y','Y','Y');

mysql> INSERT INTO db

(Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,

Create_priv,Drop_priv)

V ALUES('%','customer','custom','Y','Y','Y','Y','Y','Y');

mysql> FLUSH PRIVILEGES;

头3个INSERT语句增加user表条目,允许用户custom用给定口令从不同的主机进行连接,但是没有授予任何许可(所有权限被设置为缺省值'N')。后3个INSERT语句增加db表条目,授予custom以bankaccount、expenses和customer数据库权限,但是只能在从正确的主机存取时。通常,在授权表直接被修改时,服务器必须被告知再次装入他们(用FLUSH PRIVILEGES)以便使权限修改生效。

如果你想要给特定的用户从一个给定的域上的任何机器上存取权限,你可以发出一个如下的GRANT语句:

mysql> GRANT ...

ON *.*

TO myusername@"%https://www.doczj.com/doc/88872369.html,"

IDENTIFIED BY 'mypassword';

为了通过直接修改授权表做同样的事情,这样做:

mysql> INSERT INTO user V ALUES ('%https://www.doczj.com/doc/88872369.html,', 'myusername',

PASSWORD('mypassword'),...);

mysql> FLUSH PRIVILEGES;

你也可以使用xmysqladmin、mysql_webadmin甚至xmysql在授权表中插入、改变和更新值。你可以在MySQL的Contrib目录找到这些实用程序。

https://www.doczj.com/doc/88872369.html,/xueyuan/fuwuqi/MySQL/22384.html

设置MySql允许外部连接的方法

在linux上或window下cmd命令行下用root登陆,设置权限,grant 权限名(sqlserver和mysql不一样的,可以看手册知道,分所有的权限用all) on 库名(*表全部).表名 to 要授权的用户名@"%"(%表示所有的IP,可以只些一个IP) identified by "密码";

通常我都是写grant all on *.* to root@"%" identified by "密码";

远程连接问题,可以参考:

1、MYSQL服务器上:

比如:

C:\>mysql -uroot -p

Enter password: ******

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 2

Server version: 5.1.22-rc-community-log MySQL Community Server (GPL)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> grant all privileges on *.* to 'yourname'@'%' identified by 'youpasswd';

Query OK, 0 rows affected (0.05 sec)

mysql> flush privileges;

Query OK, 0 rows affected (0.06 sec)

mysql> exit

Bye

开启3306的方法:

https://www.doczj.com/doc/88872369.html,/search?hl=zh-CN&q=%E5%BC%80%E5%90%AF3306&meta= 2、这里假设用SQL Yog连接MYSQL服务器。

客户端机器上:

HOST ADDRESS:服务端IP地址

USER NAME:yourname

PASSWORD:yourpasswd

PORTS:3306

DA TABASES:可以留空。

MYSQL远程连接远程数据库表

MYSQL 链接远程的链接表(类似ORACLE的DBLINK) MYSQL 链接远程的链接表(类似ORACLE的DBLINK) 远程表: CREATE TABLE IF NOTEXISTS `category` ( `id` int(11) NOTNULLAUTO_INCREMENT, `category_id` int(11) NOTNULL, `name` varchar(20) NOTNULL, PRIMARYKEY(`id`) ) ENGINE=MYSAIM DEFAULT CHARSET=utf8; 本地建立链接表(映射10.10.10.133 app库的category表)的时候: CREATE TABLE IF NOT EXISTS `remotecategory` ( `id` int(11) NOT NULL AUTO_INCREMENT, `category_id` int(11) NOT NULL, `name` varchar(20) NOT NULL, PRIMARY KEY (`id`) )ENGINE=FEDERATED DEFAULT CHARSET=utf8 CONNECTION='mysql://user:passwod@10.10.10.133:3306/app/category'; 注:表的结构一模一样,就是引擎不同,看红字FEDERATED 需要在 my.ini(WINDOWS) 或者my.conf(LINUX)的 [mysqld] 下面重新起一行, 在这一行加上federated 来激活FEDERATED 即可 FEDERATED是其中一个专门针对远程数据库的实现。一般情况下在本地数据库中建表会在数据库目录中生成相应的表定义文件,并同时生成相应的数据文件 (mysql 5.0.5以上的版本)

mysql远程连接授权命令

新使用MySQL,说起来是个简单的事情,但是却费了些周折: 1、登陆服务器端,进入命令行,windows cmd; 2、设置用户、密码让指定的IP访问:mysql -u root -p 或安装的快捷方式进入:MySQL Command Line Client,使用grant命令: grant 权限1,权限2,…权限n on 数据库名称.表名称to 用户名@用户地址identified by '连接口令'; 例子: mysql>grant select,insert,update,delete,create,drop on mydb.mytable to lzpddd@192.168.1.88 identified by 'mypassword'; 给来自192.168.1.88的用户lzpddd分配可对数据库mydb的mytable表进行select,insert,update,delete,create,drop等操作的权 限,并设定口令为'mypassword'; mysql>grant all privileges on *.* to lzpddd@192.168.1.88 identified by 'mypassword'; 给来自192.168.1.88的用户lzpddd分配可对所有数据库的所有表进行所有操作的权限限,并设定口令为'mypassword'; mysql>grant all privileges on *.* to lzpddd@'%' identified by 'mypassword'; 给来自任何IP地址的用户lzpddd分配可对所有数据库的所有表进行所有操作的权限限,并设定口令为'mypassword'; 3、关闭服务器端防火墙或者开放3306端口(很重要); 4、客户端连接: 进入命令行,windows cmd,连接: mysql -u 用户名-p密码-h 服务器IP地址-P 服务器端MySQL端口号-D 数据库名 注意: (1)服务器端口标志-P一定要大些以区别于用户-p,如果直接连接数据库标志-D也要大写; (2)如果要直接输入密码-p后面不能留有空格如-pmypassword;

关于用户权限的数据库设计

1 设计思路 为了设计一套具有较强可扩展性的用户认证管理,需要建立用户、角色和权限等数据库表,并且建立之间的关系,具体实现如下。 1.1 用户 用户仅仅是纯粹的用户,用来记录用户相关信息,如用户名、密码等,权限是被分离出去了的。用户(User)要拥有对某种资源的权限,必须通过角色(Role)去关联。 用户通常具有以下属性: 编号,在系统中唯一。 ü名称,在系统中唯一。 ü用户口令。 ü注释,描述用户或角色的信息。 1.2 角色 角色是使用权限的基本单位,拥有一定数量的权限,通过角色赋予用户权限,通常具有以下属性: ü编号,在系统中唯一。 ü名称,在系统中唯一。 ü注释,描述角色信息 1.3 权限 权限指用户根据角色获得对程序某些功能的操作,例如对文件的读、写、 修改和删除功能,通常具有以下属性: ü编号,在系统中唯一。 ü名称,在系统中唯一。 ü注释,描述权限信息 1.4 用户与角色的关系 一个用户(User)可以隶属于多个角色(Role),一个角色组也可拥有多个用户,用户角色就是用来描述他们之间隶属关系的对象。用户(User)通过角色(Role)关联所拥有对某种资源的权限,例如 l 用户(User): UserID UserName UserPwd 1 张三 xxxxxx 2 李四 xxxxxx …… l 角色(Role): RoleID RoleName RoleNote 01 系统管理员监控系统维护管理员 02 监控人员在线监控人员 03 调度人员调度工作人员 04 一般工作人员工作人员…… 从该关系表可以看出,用户所拥有的特定资源可以通过用户角色来关联。 1.5 权限与角色的关系 一个角色(Role)可以拥有多个权限(Permission),同样一个权限可分配给多个角色。例如: l 角色(Role): RoleID RoleName RoleNote 01 系统管理员监控系统维护管理员 02 监控人员在线监控人员

2014浙大远程数据库系统概论在线作业

窗体顶端 您的本次作业分数为:100分单选题 1.根据SQL标准,要查询表student中所有年龄age小于所有学生的平均年龄的记录,下面哪条语句适用? A select * from student where age < avg(age) B select * from student having age < avg(age) C select * from student a where a.age < (select avg(b.age) from student b) D select * from student a where (select avg(b.age) from student b ) >= a.age 正确答案:C 单选题 2.在数据库的三级模式结构中,描述数据库用户能够看到和使用的局部数据的逻辑结构和特征描述的是指()。 A 模式 B 内模式 C 外模式 D 逻辑模式 正确答案:C 单选题 3.下列数据模型中,数据独立性最高的是()。 A 网状数据模型 B 关系数据模型 C 层次数据模型 D 非关系模型 正确答案:B 单选题 4.SQL中,下列涉及空值的操作,不正确的是()。 A AGE IS NULL B AGE IS NOT NULL C AGE = NULL

D NOT (AG E IS NULL) 正确答案:C 单选题 5.DBMS中实现事务隔离性的子系统是()。 A 安全性管理子系统 B 完整性管理子系统 C 并发控制子系统 D 恢复管理子系统 正确答案:C 单选题 6.如果一个关系中的属性或属性组并非该关系的码,但它是另外一个关系的主码,则称其为该关系的()。 A 码 B 外码 C 元组 D 主键 正确答案:B 单选题 7.如果事务T1封锁了数据R1,T2封锁了数据R2,然后T1又请求封锁R2。接着T2又申请封锁R1。这样就出现了T1在等待T2,而T2又在等待T1的局面,T1和T2两个事务永远不能结束,形成()。 A 活锁 B 死锁 C 乐观锁 D 悲观锁 正确答案:B 单选题 8.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是()。 A 多对多

SQLSERVER2008开启远程数据库访问图解

SQL SERVER2008开启远程数据库访问图解moon.翘楚 2012-02-19 8:52 转载自zhangcheng1 最终编辑zhangcheng1 tag:sql server2008远程数据库,远程连sql,IP远程连SQL SERVER,1433端口映射 这篇文章不错,我试验了确实可以,moon.翘楚在这里再进行一下图文增补,让大家更加明白。 讲解SQL Server 2008开启远程连接 作者:blue1000出处:IT专家网论坛2010-06-23 07:00 sql server 2008默认是不允许远程连接的,sa帐户默认禁用的,如果想要在本地用SSMS连接远程服务器上的SQL Server 2008,需要做两个部分的配置: sql server 2008默认是不允许远程连接的,sa帐户默认禁用的,如果想要在本地用SSMS连接远程服务器上的SQL Server 2008,需要做两个部分的配置: 1,SQL Server Management Studio Express(简写SSMS) 2,SQL Server 配置管理器/SQL Server Configuration Manager(简写SSCM) 有两点要注意: 1,2005的外围应用配置器在2008中换了地方 2,有些设置生效需要重启一下SQL Server step 1: 打开SSMS,用windows身份连接数据库,登录后,右键选择“属性” step 2: 左侧选择“安全性”,选中右侧的“SQL Server 和 Windows 身份验证模式”以启用混合登录模式 step 3: 选择“连接”,勾选“允许远程连接此服务器”,然后点“确定” step 4: 展开“安全性”->“登录名”->“sa”,右键选择“属性” step 5: 左侧选择“常规”,右侧选择“SQL Server 身份验证”,并设置密码 step 6: 选择“状态”,选中“启用”,点击“确定” step 7: 右击数据库选择“方面”

数据库用户管理(用户管理,权限分配)

学习资料:数据库用户管理 SQL Server的安全包括服务器安全和数据安全两部分。服务器安全是指可以SQL Server数据库服务器的登录管理、数据库数据的访问安全等,数据安全则包括数据的完整性、数据库文件的安全性。因此,如果你准备访问SQL Server数据库的数据,你应该具有SQL Server登录帐户和访问数据库的权限。 下面逐一讲解如何创建登录帐户、如何创建数据库用户和如何给用户授权。 一、SQL Server身份验证 在登录SQL Server时,需要选择身份验证的方式,SQL Server支持以下两种身份验证。 Windows身份验证。 SQL Server身份验证。 简单地说,Windows身份验证是使用当前登录到操作系统的用户去登录,而SQL Server身份验证是使用SQL Server中建立的用户去登录。 登录验证通过以后,就可以像管理本机SQL Server一样来管理远程机上的SQL Server 服务。 二、建立登录帐户并赋予权限 与创建数据库一样,建立SQL Server数据库的登录名、用户名,为其赋予权限也有两种方式。 1)使用SQL Server Management Studio建立登录账户并赋予权限 2)使用T-SQL建立登录账户并赋予权限 1.在SQL Server Management Studio中建立登录账户并赋予权限在SQL Server Management Studio中,通常需要进行三步操作。 1)建立SQL Server登录名 在SQL Server Management Studio中,建立登录的步骤如下。 (1)在“安全性”节点下,右击“登录名”,在右键菜单中选择“新建登录名”选项。

Oracle数据库远程连接设置的四种方法

Oracle数据库远程连接设置的四种方法 Oracle数据库的远程连接可以通过多种方式来实现,本文我们主要介绍四种远程连接的方法和注意事项,并通过示例来说明,接下来我们就开始介绍。 第一种情况: 若oracle服务器装在本机上,那就不多说了,连接只是用户名和密码的问题了。不过要注意环境变 量%ORACLE_HOME%/network/admin/是否设置。 第二种情况: 本机未安装oracle服务器,也未安装oracle客户端。但是安装了pl sql development、toad sql development、sql navigator等管理数据库的工具。在虚拟机或者另一台电脑上安装了oracle服务器,也就是虚拟机或者另一台电脑此时作为服务器。 这种情况下,本人以pl sql development远程连接ORACLE服务端数据库为例: 1、在安装oracle服务器的机器上搜索下列文件: ?oci.dll ?ocijdbc10.dll ?ociw32.dll ?orannzsbb10.dll ?oraocci10.dll ?oraociei10.dll ?sqlnet.ora ?tnsnames.ora ?classes12.jar ?ojdbc14.jar 把这些找到的文件复制放到一个文件夹,如 oraclient,将此文件夹复制到客户端机器上。如放置路径为 D:oraclient。 2、配置tnsnames.ora,修改其中的数据库连接串。 1.oracledata = 2. 3.(DESCRIPTION = 4. 5.(ADDRESS_LIST = 6. 7.(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.58)(PORT = 1521)) 8. 9.(CONNECT_DATA =

用PLSQL远程连接Oracle数据库

PL/SQL Developer 远程连接Oracle数据库 1、配置服务器tnsnames.ora文件,如果本机上没有安装oracle,可以从安 装了oracle的机上拷贝一个(tnsnames.ora文件)放在指定目录下,因为我已安装oracle,所以直接配置该文件。 # tnsnames.ora Network Configuration File: D:\Oracle11g\product\11.2.0\dbhome_1\network\admin\tnsnames.ora # Generated by Oracle configuration tools. LISTENER_ORCL = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) ORACLR_CONNECTION_DATA = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) ) (CONNECT_DATA = (SID = CLRExtProc) (PRESENTATION = RO) ) ) ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.25.224)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) ) orcl为远程Oracle数据库的实例名,IP地址和端口也要配置正确。 2、配置完成后,Oracle客户端应该可以连接到远程Oracle 数据库上。

关于用户权限的数据库设计

1设计思路 为了设计一套具有较强可扩展性的用户认证管理,需要建立用户、角色和权限等数据库表,并且建立之间的关系,具体实现如下。 1.1用户 用户仅仅是纯粹的用户,用来记录用户相关信息,如用户名、密码等,权限是被分离出去了的。用户(User)要拥有对某种资源的权限,必须通过角色(Role)去关联。 用户通常具有以下属性: 编号,在系统中唯一。 ü名称,在系统中唯一。 ü用户口令。 ü注释,描述用户或角色的信息。 1.2角色 角色是使用权限的基本单位,拥有一定数量的权限,通过角色赋予用户权限,通常具有以下属性: ü编号,在系统中唯一。 ü名称,在系统中唯一。 ü注释,描述角色信息 1.3权限 权限指用户根据角色获得对程序某些功能的操作,例如对文件的读、写、 修改和删除功能,通常具有以下属性: ü编号,在系统中唯一。 ü名称,在系统中唯一。 ü注释,描述权限信息 1.4用户与角色的关系 一个用户(User)可以隶属于多个角色(Role),一个角色组也可拥有多个用户,用户角色就是用来描述他们之间隶属关系的对象。用户(User)通过角色(Role)关联所拥有对某种资源的权限,例如l用户(User): UserID UserName UserPwd 1张三xxxxxx 2李四xxxxxx …… l角色(Role): RoleID RoleName RoleNote 01系统管理员监控系统维护管理员 02监控人员在线监控人员 03调度人员调度工作人员 04一般工作人员工作人员…… 从该关系表可以看出,用户所拥有的特定资源可以通过用户角色来关联。 1.5权限与角色的关系 一个角色(Role)可以拥有多个权限(Permission),同样一个权限可分配给多个角色。例如:l角色(Role): RoleID RoleName RoleNote 01系统管理员监控系统维护管理员 02监控人员在线监控人员

SQL2000数据库实现远程连接

SQL 2000数据库怎么实现远程连接 SQL Server 2000无论是个人版、企业版还是标准版,只要细版本在8.00.1760以下,均不提供远程数据库连接,即使服务器端工具和客户端工具的设置均有TCP/IP设置和数据库连接属性也设置了RPC远程连接,仍然不能实现远程连接。该怎么解决呢? 解决方案如下: 首先,需要打SP4补丁,该补丁包含了以前sp1、2、3的补丁,安装此补丁后一般要重新启动计算机,再进行远程连接就可以了,如再企业管理器可远程注册服务器、查询分析可连接远程服务器、ODBC可连接远程服务器。 要点: 1.确认服务器端SQL服务端口号是否为:1433 2.如果不是1433,配置客户端 3.建立服务器端登录帐号,确保角色及管理数据库 一、查看服务器端情况 1. 看ping 服务器IP能否ping通。 这个实际上是看和远程sql server 服务器的物理连接是否存在。如果不行,请检查网络,查看配置,当然得确保远程sql server 服务器的IP拼写正确。 2. 在Dos或命令行下输入telnet 服务器IP 端口,看能否连通。 如telnet 202.114.100.100 1433 通常端口值是1433,因为1433是sql server 的对于Tcp/IP的默认侦听端口。如果有问题,通常这一步会出问题。通常的提示是“……无法打开连接,连接失败"。 如果这一步有问题,应该检查以下选项。 1) 检查远程服务器是否启动了sql server 服务。如果没有,则启动。 2) 检查sql server服务器端有没启用Tcp/IP协议,因为远程连接(通过因特网)需要靠这个协议。检查方法是,在服务器上打开开始菜单->程序->Microsoft SQL Server->服务器网络实用工具,看启用的协议里是否有tcp/ip协议,如果没有,则启用它。 3) 检查服务器的tcp/ip端口是否配置为1433端口。仍然在服务器网络实用工具里查看启用协议里面的tcp/ip的属性,确保默认端口为1433,并且隐藏服务器复选框没有勾上。 事实上,如果默认端口被修改,也是可以的,但是在客户端做telnet测试时,写服务器端口号时必须与服务器配置的端口号保持一致。如果隐藏sql server服务器复选框被勾选,则意味着客户端无法通过枚举服务器来看到这台服务器,起到了保护的作用,但不影响连接,但是Tcp/ip协议的默认端口将被隐式修改为2433,在客户端连接时必须作相应的改变(具体方式见二:设置客户端网络实用工具)。

在Linux环境下启用MySQL数据库远程访问的方法

在Linux环境下启用MySQL数据库远程访问的方法 远程连接MySQL出于安全考虑,一般都关闭了远程访问,但有时候需要提供远程访问数据库的服务,今天由郑州网站建设给大家做个小教程作为参考: 第一步:修改https://www.doczj.com/doc/88872369.html,f文件 使用文本编辑器去编辑MySQL服务器的配置文件https://www.doczj.com/doc/88872369.html,f 如果你使用Debian Linux,文件位置在:/etc/mysql/https://www.doczj.com/doc/88872369.html,f 如果你使用Red Hat Linux/Fedora/Centos Linux,文件位置在:/etc/https://www.doczj.com/doc/88872369.html,f 如果你使用FreeBSD,文件位置在:/var/db/mysql/https://www.doczj.com/doc/88872369.html,f 如果使用VI编辑,直接使用命令 # vi /etc/https://www.doczj.com/doc/88872369.html,f 第二步:如果文件打开,按照下面内容进行 [mysqld] 确保skip-networking是被注释的,或者被删除,然后添加下面一行内容 bind-address=你的服务器IP

例如,你的服务器IP是65.55.55.2,然后需要配置例如如下的内容: [mysqld] user = mysql pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock port = 3306 basedir = /usr datadir = /var/lib/mysql tmpdir = /tmp language = /usr/share/mysql/English bind-address = 65.55.55.2 # skip-networking .... .. .... 这里面 bind-address : 你需要绑定的IP地址. skip-networking :开启skip-networking 选项可以彻底关闭MySQL的TCP/IP连接方式,在一些文档中也提到在单机运行的MySQL 推荐开启该选项,现在看,不太靠谱。

数据库用户权限划分共5页word资料

数据库用户权限划分 一、数据库公共对象设定 公共对象是指在数据库中大家经常要用到的一些参数表、视图等实例。以及由某个开发的可以共用的一些函数、过程、程序集等功能模块。凡是可以连接该数据库中用户均具备此项权限。可在对象属性中设置此权限。 二、数据库用户权限设定 用户权限是指用户对于该数据库中的所有对象拥有的权限。用户不需要对特定对象设置即可拥有。可在数据库上设置此权限。 三、局部权限设定 局部权限是指用户只对数据库中的部分对象拥有权限。可在登录属性的用户映射中设置此权限。其中自定义角色(按需)是指自定义的一组数据库角色。 四、数据库角色权限设定 数据库角色是一种数据库对象。可根据数据库的对象应用情况设定选取的对象范围,然后设置相关权限。可在当前库“安全”—“角色”中设置此角色。 五、案例(保险库insurance权限划分) (一)公共表权限设置(创建位置:服务器—数据库—表) dbo.Par_Area_mp dbo.Par_BJ_8_area dbo.Par_Status dbo.Par_徐汇闵行路名 (二)添加数据库角色(创建位置:服务器—数据库—安全性—角色—数据库角色) i.保险查询 ii.保险更新 iii.全库查询 iv.全库更改 v.全库更新 vi.外部库查询

vii.外部库更新 (三)创建用户(创建位置:服务器—安全性—登录名),并设置数据库角色。

Test

(四)连接使用 i.只连接了有查看权限的表 ii.可以进行查询操作 iii.不可以创建表 iv.不可以删除表 v.不可以对表中数据进行删除 vi.不可以对表进行写入

Labview中远程数据库访问技术

摘要:介绍了在Labview中应用ADO技术访问本地和远程数据库的方案。对在局域网中以网络 共享方式访问远程Access数据库进行了详细介绍,最后给出了应用该方法开发的一个实例。关 键词:LabviewADO远程数据库引言Labview是美国NI公司开发的一种图形化编程语言,其主 要用于数据采集、仪器控制、过程监控等领域。Labview具有丰富的采集与分析函数库,在Labview环境下可以方便快捷地开发监控系统软件。现代监控系统一般构建于局域网内,且 摘要:介绍了在Labview中应用ADO技术访问本地和远程数据库的方案。对在局域网中以网络共享方式访问远程Access数据库进行了详细介绍,最后给出了应用 该方法开发的一个实例。 关键词:Labview ADO 远程数据库 引言 Labview 是美国NI公司开发的一种图形化编程语言,其主要用于数据采集、仪器控制、过程监控等领域。Labview具有丰富的采集与分析函数库,在Labview 环境下可以方便快捷地开发监控系统软件。现代监控系统一般构建于局域网内,且监控系统自身也是企业生产管理系统的一个子系统,因此不可避免地要访问本地或远程数据库。Labview开发版中并没有提供直接与通用数据库接口的工具,但可以 通过以下方法解决:购买NI公司开发的附加软件工具包;利用其它语言如VC++编写DLL访问数据库;利用ADO控件访问数据库。[1]Labview支持Activex控件,与其它方法相比基于ADO技术构建本地或远程数据库访问接口不失为一种简单而又经济 的方法。 1 ADO技术简介 ADO(Activex Data Objects)是Microsot为OLE DB设计的应用层接口,它为一致的数据访问接口提供了良好的扩展性而不局限于单一的数据源。ADO接口编程模型中包括连接(connection)、命令(command)、参数(parameter)、 记录集(recordset)、字段(field)、错误(error)、属性(property)、集合(collection)、事件(event)等元素。其中connection、command、recordset是三个主体对象,parameters、fields、errors、properties、是四个集合对象。ADO的一般操作方式为:1 连接到数据源;2 指定访问数据源的命令;3 执行命令;4 将命令执行后产生的结果保存在缓存中;5 更新数据源。ADO接口继承了OLE DB的高速性,可以高速访 问本地或远程的数据源。 2在Labview 中使用ADO接口 在Labview 中使用ADO接口访问数据库一般包括以下几个步骤:建立ADO控件;连接到数据源;生成SQL命令;执行命令;关闭连接。具体步骤如图1 所示。 2.1建立ADO控件 在前面板控件模板中选择Activex子模板单击Automation Refnum项,右键单击Select Activex Class的Browse从类型库中选择 Microsoft Activex Data Objects 2.7 library Version 2.7,之后可以向框图程序中加 入connection、command、recordset等对象。 2.2连接到数据源 首先在Diagram中单击鼠标右键,从Function模板选择communication 子模板,从中选择Activex项的Automation Open 与ADODB_Connection相连即 可打开连接。接着同样从communication子模板的Activex项中选择 Invoke node (方法节点)并与Automation Open 相连,在其上单击右键选择methods项的Open方法即出现图1中所示的节点。其中“Open”表示该节点为打开“连接对象”,“ConnectionString”是连接到数据源的字符串,“UserID”和“Password”

数据库用户权限划分

(Database Department ) Tel: (86-10)51652500 Fax: (86-10)51388462 数据库用户权限划分 一、 数据库公共对象设定 公共对象是指在数据库中大家经常要用到的一些参数表、视图等实例。以及由某个开发的可以共用的一些函数、过程、程序集等功能模块。凡是可以连接该数据库中用户均具备此项权限。可在对象属性中设置此权限。 公共表 公共视图公共函数 公共过程 插入 查看定义√√ 更改更新 接管所有权控制删除选择√√引用√√ √执行 √ √ 对象 公共对象权限 二、 数据库用户权限设定 用户权限是指用户对于该数据库中的所有对象拥有的权限。用户不需要对特定对象设置即可拥有。可在数据库上设置此权限。

Tel: (86-21)51695700 Fax: (86-10)85895199 Website: https://www.doczj.com/doc/88872369.html, Zip:200030 库用户权限1DBA (参见角色)数据修改数据查询局部(参见角色)库用户权限2DBA (参见角色)数据修改数据查询 局部 (参见角色) 备份日志√更改任意对称密钥√备份数据库√更改任意非对称密钥√插入√√更改任意服务√查看定义√更改任意架构√查看数据库状态√更改任意角色 √创建XML 架构集合√更改任意路由 √创建表√√更改任意全文索引√创建程序集√更改任意数据空间 √创建队列 √更改任意数据库DDL 触发器√创建对称密钥√更改任意数据库事件通知√创建服务√更改任意消息类型√创建规则√√更改任意应用程序角色√创建过程√√更改任意用户√创建函数√√更改任意远程服务绑定√创建架构√更改任意约定√创建角色√更改任意证书√创建类型√更新√√创建路由√检查点√创建默认值√√接管所有权√创建全文目录√√控制√创建视图√√控制聚合 √创建数据库DDL 事件通知√连接 √√√√创建同义词√连接复制√创建消息类型√删除√√创建远程服务绑定√身份验证√创建约定√显示计划√创建证书√选择√√√订阅查询通知√引用√√更改√√执行√√更改任意程序集 √

Oracle sqlplus远程连接数据库

Oracle sqlplus远程连接数据库 sqlplus username/password@yunSID_192.168.1.5 公司使用linux开发机进行程序开发时,由于开发用Oracle数据库是由日方提供,所以经常使用sqlplus连接到远程数据库上进行开发,例如: sqlplus username/password@servicename 于是想,用我的两台电脑双机互联试一试,也玩个“远程连接”。实验如下: 首先在我的台式机上安装了Oracle9i的数据库管理系统,并建立了一个数据库实例:xy 然后为该实例新增了一个用户,用户名和密码都是kxy01。启动实例xy后,在台式机上,直接在cmd环境键入:sqlplus kxy01/kxy01@xy就可以连接上数据库,呵呵,想来本地连接都是不费吹灰之力就行的。 之后,在我的笔记本上安装了Oracle9i的Client工具。然后试着直接用上述命令访问,显然是不行的,系统返回无法解析服务名的错误信息。 要实现连接到远程数据库,先了解一下相关知识吧,查了一下书。原来,Oracle 数据库的远程连接是通过Oracle Net实现的。在服务器和客户端都必须运行有配置正确的Oracle Net才可以。不管使用的配置和配置工具如何,都应该告诉Oracle Net怎样找到远程数据库。 要怎么配置Oracle Net呢。点开Oracle的开始菜单,寻找相关的工具,发现一个名为: Net Configuration Assitant的工具,应该就是它了。启动之: Net Configuration Assitant共提供了4个配置功能: 监听程序配置, 命名方法配置, 本地网络服务名配置 目录使用配置。 要从远程位置连接Oracle数据库,必须配置Oracle网络监听程序。Net Configuration Assitant可以用于此项配置工作,启动后选择监听程序配置,一路下一步即可。之后点开命名方法配置,系统已经默认提供了三种,其他两种也不太认识,干脆不改了,直接点后退,回到主菜单。 主菜单中,第三项是本地网络服务名配置。要通过网络访问Oracle数据库或其他服务,要使用网络服务名,该项配置允许使用由本地命名解析的网络服务名。而第四项为目录使用配置,点开一看,居然要选择目录服务器,我这一共就两台电脑,要什么目录服务,看来第四项不适合本实验了,显然,关键配置就在第三项:本地网络服务名配置。 将其点开,选择“添加”网络服务名操作,然后会询问你希望访问何种版本的Oracle 数据库服务。按照常理,我装的是Oracle9i自然应该选择第一个(Oracle8i或更高版本数据库服务),可经过实践证明,只有选择第二个(Oracle8i发行版8.0数据库或服务)才能正常实现远程连接,不明其中原因,也就只有选第二个拉。 然后输入我的数据库实例SID:xy 然后选择网络协议,双机互联应该选择TCP吧,再然后填写数据库所在的主机名:kxyhome。端口号采用默认的1521。 点击下一步,进行数据库连接的测试,测试成功后进行网络服务名的填写,这个

远程访问数据库

远程访问数据库 对于oracle数据库,可以通过建立dblink的方式,在一个数据库中访问获取另一个数据库的数据,具体实现方式如下: 1.建立DATABASE LINK: 在本机数据库中执行如下语句: Create public database link ERPDATABASE–远程数据库连接名 Connectto apps identifiedby apps Using '(DESCRIPTION = (ADDRESS_LIST= (ADDRESS = (PROTOCOL = TCP) (HOST = 192.168.0.100) (PORT = 1521) ) ) (CONNECT_DATA = (SERVICE_NAME = ERPTEST) ) ) ' ; 蓝色部分可以从数据库安装目录\product\10.2.0\db_1\network\ADMIN的路径下找到,拷贝tnsnames.ora文件中的对应信息。 以上连接信息可以用oracle客户端的Net Manager工具生成:

2.查看数据 成功之后,可以在本机数据库中查看ERPTEST数据库的数据: 其中需要注意的有: 1)ygfm为数据库用户名,因为dblink的连接信息中使用的apps用户是数据库dba,所以可以方位ygfm的数据,这里要注意的是apps需要有ygfm的访问权限。 2)注意需要使用’ @ERPDATABASE’标识远程数据库。 3.建立同义词 可以建立同义词减少输入: 执行以下语句: Create synonym ygfm_analyse_base for ygfm.ygfm_analyse_base@ERPDATABASE; 查询: select * from ygfm_analyse_base; 需要注意的是:这里建立的DATABASE LINK 不同于tnsnames.ora文件中的连接信息,这里是在数据库中保存连接信息,而tnsnames.ora文件中的连接信息是在数据库层面之上的。

开启mysql的远程连接的方法

开启mysql的远程连接的方法 web与mysql数据库分离开来是一个不错的选择,避免因为大量的数据库查询占用CPU而使web资源不足,同时可以使web 服务器的资源尽最大的提供浏览服务,而数据库服务器单独的只处理数据库事物。 适用范围:拥有独立主机权限。 硬件配置:两台服务器,至于具体服务器硬件配置就不在本文范围内了。其中:A为web服务器(假设ip为:192.192.192.192)、B为mysql数据服务器(假设ip为:168.168.168.168) 着手动作: 1.在web服务器A配置好web服务。假设web服务器的IP为:19 2.192.192.192 2.在数据库服务器B安装好mysql服务。 3.现在新版的mysql一般默认都不允许远程连接的。需要建立远程连接账号才可以。 以命令行方式使用root账号进入mysql。 mysql -uroot -ppass

选择进入mysql数据库 use `mysql`; 查看所有存在的账号和地址。 SELECT `Host`,`User` FROM `user`; 比如我的就是: +-----------+------+ | Host | User | +-----------+------+ | localhost | | | localhost | pma | | localhost | root | +-----------+------+ 3 rows in set (0.00 sec) 也就是说,存在三个只允许本地连接的(localhost)账号,分别为root、pma、空用户。 现在决定让root具有上面那个web服务器A的远程链接的权限,

JAVA用户角色权限数据库设计

实现业务系统中的用户权限管理 B/S系统中的权限比C/S中的更显的重要,C/S系统因为具有特殊的客户端,所以访问用户的权限检测可以通过客户端实现或通过客户端+服务器检测实现,而B/S中,浏览器是每一台计算机都已具备的,如果不建立一个完整的权限检测,那么一个“非法用户”很可能就能通过浏览器轻易访问到B/S系统中的所有功能。因此B/S业务系统都需要有一个或多个权限系统来实现访问权限检测,让经过授权的用户可以正常合法的使用已授权功能,而对那些未经授权的“非法用户”将会将他们彻底的“拒之门外”。下面就让我们一起了解一下如何设计可以满足大部分B/S系统中对用户功能权限控制的权限系统。 需求陈述 ?不同职责的人员,对于系统操作的权限应该是不同的。优秀的业务系统,这是最基本的功能。 ?可以对“组”进行权限分配。对于一个大企业的业务系统来说,如果要求管理员为其下员工逐一分配系统操作权限的话,是件耗时且不够方便的事情。所以,系统中就提出了对“组”进行操作的概念,将权限一致的人员编入同一组,然后对该组进行权限分配。 ?权限管理系统应该是可扩展的。它应该可以加入到任何带有权限管理功能的系统中。 就像是组件一样的可以被不断的重用,而不是每开发一套管理系统,就要针对权限管理部分进行重新开发。 ?满足业务系统中的功能权限。传统业务系统中,存在着两种权限管理,其一是功能权限的管理,而另外一种则是资源权限的管理,在不同系统之间,功能权限是可以重用的,而资源权限则不能。 关于设计 借助NoahWeb的动作编程理念,在设计阶段,系统设计人员无须考虑程序结构的设计,而是从程序流程以及数据库结构开始入手。为了实现需求,数据库的设计可谓及其重要,无论是“组”操作的概念,还是整套权限管理系统的重用性,都在于数据库的设计。 我们先来分析一下数据库结构: 首先,action表(以下简称为“权限表”),gorupmanager表(以下简称为“管理组表”),以及master表(以下简称为“人员表”),是三张实体表,它们依次记录着“权限”的信息,“管理组”的信息和“人员”的信息。如下图:

MySQL数据库远程连接开启方法

MySQL数据库远程连接开启方法 发布:dxy 字体:[增加减小] 类型:转载 有时候需要远程连接mysql数据库,默认是不可以的,大家可以参考下面的方法,解决下。 第一中方法:比较详细 以下的文章主要介绍的是MySQL 数据库开启远程连接的时机操作流程,其实开启MySQL 数据库远程连接的实际操作步骤并不难,知识方法对错而已,今天我们要向大家描述的是 MySQL 数据库开启远程连接的时机操作流程。 1、d:\MySQL\bin\>MySQL -h localhost -u root 这样应该可以进入MySQL服务器 复制代码代码如下: MySQL>update user set host = '%' where user = 'root'; MySQL>select host, user from user; 2、MySQL>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypas sword' WITH GRANT OPTION 予任何主机访问数据的权限 3、MySQL>FLUSH PRIVILEGES 修改生效

4、MySQL>EXIT 退出MySQL服务器 这样就可以在其它任何的主机上以root身份登录啦!

以上的相关内容就是对MySQL 数据库开启远程连接的介绍,望你能有所收获。 第二种方法: 1、在控制台执行mysql -u root -p mysql,系统提示输入数据库root用户的密码,输入完

成后即进入mysql控制台,这个命令的第一个mysql是执行命令,第二个mysql是系统数据名称,不一样的。 2、在mysql控制台执行GRANT ALL PRIVILEGES ON *.* TO ‘root'@'%' IDE NTIFIED BY ‘MyPassword' WITH GRANT OPTION; 3、在mysql控制台执行命令中的‘root'@'%' 可以这样理解: root是用户名,%是主机名或 IP地址,这里的%代表任意主机或IP地址,你也可替换成任意其它用户名或指定唯一的I P地址;'MyPassword'是给授权用户指定的登录数据库的密码;另外需要说明一点的是我这里的都是授权所有权限,可以指定部分权限,GRANT具体操作详情见:http://dev.mysql.c om/doc/refman/5.1/en/grant.html 4、不放心的话可以在mysql控制台执行select host, user from user; 检查一下用户表里 的内容 您可能感兴趣的文章: ?mysql 远程连接数据库的方法集合 ?PHP远程连接MYSQL数据库非常慢的解决方法 ?解决远程连接mysql很慢的方法(mysql_connect 打开连接慢)

sql 2005 error 40远程连接错误

sql 2005 error 40远程连接错误 数据库 2010-01-22 19:43:38 阅读432 评论0 字号:大中小 在尝试从远程计算机连接到 Microsoft SQL Server 2005 实例时,可能会接收到错误消息。在使用任何程序连接到 SQL Server 时都可能会发生此问题。例如,在使用 SQLCMD 实用工具连接到 SQL Server 时收到以下错误消息: Sqlcmd:错误:Microsoft SQL Native Client:建立到服务器的连接时发生错误。连接到 SQL Server 2005 时,默认设置 SQL Server 不允许远程连接这个事实可能会导致失败。 如果没有将 SQL Server 2005 配置为接受远程连接,则可能会发生此问题。默认情况下,SQL Server 2005 Express Edition 和 SQL Server 2005 Developer Edition 不允许远程连接。若要配置 SQL Server 2005 以允许远程连接,请完成以下所有步骤: ?在您要从远程计算机连接到的 SQL Server 实例上启用远程连接。 ?打开 SQL Server Browser 服务。 ?配置防火墙以允许与 SQL Server 和 SQL Server Browser 服务相关的网络通讯。 本文介绍如何完成这些步骤中的每一步。 更多信息 若要在 SQL Server 2005 实例上启用远程连接并打开 SQL Server Browser 服务,请使用 SQL Server 2005 外围应用配... 若要在 SQL Server 2005 实例上启用远程连接并打开 SQL Server Browser 服务,请使用 SQL Server 2005 外围应用配置器工具。在安装 SQL Server 2005 时会安装外围应用配置器工具。 为 SQL Server 2005 Express Edition 或 SQL Server 2005 Developer Edition 启用远程连接 必须为要从远程计算机连接到的每个 SQL Server 2005 实例启用远程连接。为此,请按照下列步骤操作: 1.单击“开始”,依次指向“程序”、“Microsoft SQL Server 2005”和 “配置工具”,然后单击“SQL Server 外围应用配置器”。

相关主题
文本预览
相关文档 最新文档