当前位置: 首页 > news >正文

网站开发工具的选择wordpress tag 数据库

网站开发工具的选择,wordpress tag 数据库,1对1视频,网络运营是干嘛的问题描述 今天对我本地的数据库迁移服务器上#xff0c;完成之后启动项目报错 说数据库中不存在 quartz_LOCKS 这张表 我打开服务器上面的数据上面展示的表名是 quartz_LOCKS#xff0c;然后通过查询 lower_case_table_names 配置可知 show variables like lower_case_tabl…问题描述 今天对我本地的数据库迁移服务器上完成之后启动项目报错 说数据库中不存在 quartz_LOCKS 这张表 我打开服务器上面的数据上面展示的表名是 quartz_LOCKS然后通过查询 lower_case_table_names 配置可知 show variables like lower_case_table_names;lower_case_table_names0表示 表名区分大小写且按照用户指定存储 lower_case_table_names 各参数含义 0表名区分大小写且按照用户指定存储1表不区分大小写使用小写存储2表不区分大小写按照用户指定存储 按理说只要将 lower_case_table_names 的值设置为 1 或者 2 就行了 接着我去修改了服务器上 my.cnf 或者 my.ini文件 添加以下配置 [mysqld] lower_case_table_names 1接着再重启 mysql # 重启 mysql systemctl restart mysqldmysql 启动失败 原因分析 根据提示使用 systemctl status mysqld.service 命令显示 mysqld.service 的状态信息 退出状态码为 1这通常意味着在启动过程中遇到了某种错误为了确定具体的错误原因查看更详细的日志 # 查询 mysql 日志 sudo tail -n 100 /var/log/mysqld.log从日志上说明 MySQL 服务器启动失败的原因是 lower_case_table_names 的设置不一致。MySQL 的 lower_case_table_names 配置项决定了表名在存储和比较时是否应该转换为小写这个设置必须在服务器和数据字典之间保持一致否则服务器将无法正确启动 [ERROR] [MY-011087] [Server] Different lower_case_table_names settings for server (1) and data dictionary (0). 指出服务器期望 lower_case_table_names 设置为 1意味着表名在存储和比较时应转换为小写但是数据字典即已有的数据库表元数据的 lower_case_table_names 设置是 0意味着表名区分大小写 从 mysqld.log 日志文件打印的信息来看导致 Mysql 启动失败的原因就是因为设置了 lower_case_table_names1 这个参数之前在本地使用的 Mysql 是 5.7 版本的而服务器上面的 Mysql 版本确是 8.0 查看 Mysql 官方文档可知 lower_case_table_names can only be configured when initializing the server. Changing the lower_case_table_names setting after the server is initialized is prohibited. 在 Mysql-8.0 版本时lower_case_table_names 变量是一个系统变量它只能在 MySQL 服务器初始化时设置并且一旦服务器初始化完成就不应该再更改这个设置。这是因为在 MySQL 的数据字典和文件系统层面这个设置影响到了表名和目录名的大小写敏感性和转换规则。如果在服务器运行时改变这个设置可能会导致数据不一致和其他严重问题 解决方案 通过分析可知 Mysql8 在初始化之后是不能修改 lower_case_table_names 这个参数的 那要解决这个问题有两种方案要么就是更改现有的表明要么就初始化数据库更改配置 方案一 如果你的表比较少的话可以通过 RENAME TABLE 语句来更改它们例如将 my_table 更新为 MY_TABLE RENAME TABLE my_table TO MY_TABLE;但是如果你有很多表需要更改这种方法可能会很繁琐 也可以编写一个脚本来查询数据库中的所有表名并自动为它们生成 RENAME TABLE 语句然后执行这些语句来更改表名 方案二 初始化数据库再更改 lower_case_table_names 配置在初始化数据时需要清空数据库中所有的数据并恢复到初始状态所以务必做好数据备份 在初始化数据库时需要先将数据库关闭 # 关闭 mysql systemctl stop mysqldMysql 数据库的数据库存储在 /var/lib/mysql 下在重新初始化数据库之前需要删除现有的数据目录 sudo rm -rf /var/lib/mysql注意此操作不可逆务必做好数据备份 再重新创建一个新的数据目录 sudo mkdir /var/lib/mysql授权 Mysql 对于 /var/lib/mysql 目录的所有权 sudo chown -R mysql:mysql /var/lib/mysql初始化数据库 sudo mysqld --initialize到此为止初始化的步骤已经完成接着就去修改 /etc/my.cnf 文件中的 lower_case_table_names 配置 在 /var/log/mysqld.log 这个文件中查找 Mysql 的密码 cat /var/log/mysqld.logrtAVCTaNg0*b 再启动 Mysql # 启动 mysql systemctl start mysqld连接 Mysql # 连接 MySQL mysql -u root -p修改 root 密码 ALTER USER rootlocalhost IDENTIFIED BY password;再通过以下命令查看下 lower_case_table_names 的值是否为你所设置的 show variables like lower_case_table_names;可以看到已经成功修改为 1 了
http://www.pierceye.com/news/149566/

相关文章:

  • 做招聘的h5用哪个网站企业网站需要多大空间
  • 织梦 公司网站模板html5网站开发的源码
  • 晋江网站建设公司电脑培训网
  • 电子商务网站开发的题网站关键词排名怎么提升
  • 在百度网站备案查询上显示未备案是什么意思wordpress资源分享主题
  • 夏县做网站郑州做商城网站
  • 网站首页推荐网络服务提供者发现用户利用其网络服务对未成年
  • 中外网站建设区别微信软文是什么意思
  • 苏州网站建设极简幕枫卫浴网站建设
  • 优秀企业网站欣赏网站的备案怎么处理
  • 怎样做古玩网站毕业设计开题报告网站开发
  • 西安网站 建设app注册推广
  • 丹徒网站建设公司代理公司注册价格
  • 网站建站建设网站中国商标商标查询网
  • 机械加工网站平台南京app制作开发公司
  • 用vs2008做网站教程seo推广网址
  • 正规制作网站公司哪家好视觉传达设计专业作品集
  • 做网站多少钱特惠西宁君博s网站网站建设多少钱
  • 建筑模版东莞网站建设技术支持手机网站开发学习
  • 专业网站建设效果显著做设计找参考的设计网站有那些
  • 最新网站建设技术2022年新闻摘抄简短
  • 手机网站总是自动跳转最吃香的男生十大手艺
  • 免费网站推广软件哪个好企业vi设计公司价格
  • 自助建网站不需要域名番禺网站优化平台
  • 一般建设网站的常见问题国家企业信用信息公示官网
  • 韩国美容网站 模板互联网大赛官网入口
  • 太原网站开发哪家好wordpress怎么贴代码
  • 深圳网站设计与制作网站建设公司海南
  • 做网站需要什么cailiao网站项目申报书建设规模
  • wordpress手机网站模板wordpress分类设置seo