mysql下为数据库设置交叉权限的方法
发布时间:2024-01-26 14:16:10
这就需要在 MySQL 中对用户权限进行修改,授予需要的权限。
本文将演示这种情况,并给出详细的解决步骤。
本文示例的配置如下:
Discuz!
数据库名:discuz_7_sc_utf8
数据库用户名:discuz_mysql
权限:操作 discuz_7_sc_utf8 的全部权限
SupeSite/X-space
数据库名:ss_601_xs_401_sc_utf8
数据库用户名:ss_mysql
权限:操作 ss_mysql 的全部权限
出现情况:安装 SupeSite/X-space 时无法检测到 Discuz! 的数据库。
解决方法:授予 ss_mysql 操作 discuz_7_sc_utf8 的全部权限。
如果为了方便,可以创建一个数据库用户,授予该用户操作 Discuz! 和 SupeSite 数据库的全部权限,在安装时,都使用这个数据库用户,就不会出现本文的这种情况。以后安装别的产品,比如 UCenter Home,再授予该用户操作 UCenter Home 数据库的权限即可。
一、安装 Discuz_7.0.0_SC_UTF8
1、在 MySQL 中创建数据库 discuz_7_sc_utf8
打开 phpMyAdmin => 创建一个新的数据库
2、在 MySQL 中创建数据库用户 discuz_mysql,授予操作数据库 discuz_7_sc_utf8 的权限
打开 phpMyAdmin => 权限 => 添加新用户
为了安全,不授予 discuz_mysql 这个用户访问其他数据库的权利,所以全局权限不选。设计完毕,点击“执行”。
跳转到“编辑权限”的页面,“按数据库指定权限”选择“discuz_7_sc_utf8”
在这里,授予数据库用户 discuz_mysql 操作数据库 discuz_7_sc_utf8 的全部权限,如图所示。
3、Discuz_7.0.0_SC_UTF8 的安装设置
在 Discuz! 安装时,输入刚才创建的数据库名、用户名和密码。
二、安装 SupeSite6.0.1_X-Space4.0.1_UC_SC_UTF8
1、在 MySQL 中创建数据库 ss_601_xs_401_sc_utf8
2、在 MySQL 中创建数据库用户 ss_mysql,授予操作数据库 ss_601_xs_401_sc_utf8 的权限
3、SupeSite6.0.1_X-Space4.0.1_UC_SC_UTF8 的安装设置
安装 SuperSite 时,输入刚才创建的数据库名:ss_601_xs_401_sc_utf8,数据库用户名:ss_mysql,以及已安装的论坛 Discuz 的数据库名 discuz_7_sc_utf8,如图所示。
因为刚才只是授予数据库用户 ss_mysql 操作数据库 ss_601_xs_401_sc_utf8 的权限,所以数据库用户 ss_mysql 并没有操作数据库 discuz_7_sc_utf8 的权限,这安装时出现错误,提示“发生错误,您指定的 Discuz!数据库(discuz_7_sc_utf8)不存在,请修正”。
4、授予用户 ss_mysql 操作数据库 discuz_7_sc_utf8 的权限,安装成功
出现这种情况,就需要授予 ss_mysql 操作数据库 discuz_7_sc_utf8 的权限。打开 phpMyAdmin => 权限 => 编辑权限,如图所示。
SupeSite 需要 读取、插入、删除数据库 discuz_7_sc_utf8 中的数据,所以授予用户 ss_mysql 操作数据库 discuz_7_sc_utf8 的全部权限。
授予权限之后,通过安装程序的检测,可以继续安装了。
需要注意的是,如果希望 SupeSite 和 Discuz!同步登录,SupeSite 的 Cookie 设置要和 Discuz! 目录下 config.inc.php 文件中的值相同,如图所示。
现在安装完毕,SupeSite 和 X-space 能够正常显示论坛中的内容。


猜你喜欢
- MySQL中SQL Mode的查看与设置MySQL可以运行在不同的模式下,而且可以在不同的场景下运行不同的模式,这主要取决于系统变量 sql
- 直接使用model2=model1会出现当更新model2时,model1的权重也会更新,这和自己的初始目的不同。经评论指出可以使用:mod
- Python 类的继承详解Python既然是面向对象的,当然支持类的继承,Python实现类的继承比JavaScript简单。Parent类
- 拉勾网面试题1. 你首先说出三个不同的特殊数,要求必须是个位数,比如3、5、7。2. 让所有学生拍成一队,然后按顺序报数。3. 学生报数时,
- 一.垃圾回收机制Python中的垃圾回收是以引用计数为主,分代收集为辅。引用计数的缺陷是循环引用的问题。在Python中,如果一个对象的引用
- 每天换一个壁纸,每天好心情。# -*- coding: UTF-8 -*- from __future__ import unicode_l
- 在讲解Configurable之前,我们首先来看一道面试题:a = 1;console.log( window.a ); // 1conso
- 什么是list?list 是一个序列!一串数据,这个串可以追加数据。我们可以把它看成大型商场内,儿童游玩串串车,它就像一趟一趟车厢一样,可以
- 如何获取一个页面内所有URL链接?在Python中可以使用urllib对网页进行爬取,然后利用Beautiful Soup对爬取的页面进行解
- 一个有点绕的例子,用PyScripter调试器步进跟踪可以看清楚对 象结构的具体细节。对原作改变了一下,在未定义子对象属性时__getite
- 取自ThinkPHP的文件缓存类代码,这里就不多废话了,小伙伴们自己看注释吧。<?php /** * @de
- 1.我们可以为每一个实例对象增加方法。也就是说我们在每次使用‘类'之外的方法时候,都需要创建一次。 function D
- 这次我们来说一些很小的东西,相当小。不过先说一个故事:这天晚上,你打算出去下一次馆子,就行动了,找到了一家新开的小店进去坐了下来,服务员很殷
- 在蓝色看到的这个程序,不错!by:thornyzhl前天看到有个人写了能在网页中写字的程序,找不到了,我来个能擦写的....蛮有意思的阿.~
- 本文实例讲述了Python使用scrapy采集数据过程中放回下载过大页面的方法。分享给大家供大家参考。具体分析如下:添加以下代码到setti
- 近来看论坛上经常有人提问关于如何无刷新,自动更新数据.传统上,我们浏览网页,如果加入最新的数据.只能是等我们重新向服务器端请求时才能显示出来
- 有时候会碰到行转列的需求(也就是将列的值作为列名称),通常我都是用 CASE END + 聚合函数来实现的。如下:declare @t ta
- 前言:在 Go 语言中,同时声明多个常量、变量,或者导入多个包时,可采用分组的方式进行声明。例如下面的代码:import "fmt
- PHP mysqli_thread_id() 函数返回当前连接的线程 ID,然后杀死连接:<?php// 假定数据库用户名:root,
- 生成器是迭代器,同时也并不仅仅是迭代器,不过迭代器之外的用途实在是不多,所以我们可以大声地说:生成器提供了非常方便的自定义迭代器的途径。这是