我的本地机器上有一个 WordPress 数据库,我想将它转移到 cPanel 上的托管 phpMyAdmin。但是,当我尝试将数据库导入环境时,我不断收到此错误:
#1273 - Unknown collation: 'utf8mb4_unicode_ci'
我试过谷歌,我能找到的唯一解决方案是这个phpmysql 错误 - #1273 - #1273 - Unknown collation: ‘utf8mb4_general_ci’到目前为止没有太大帮助。我试过清除cookies,但还是不行。请帮忙!
我遇到了同样的问题,因为我们所有的服务器都运行旧版本的 MySQL。这可以通过运行 PHP 脚本来解决。将此代码保存到文件并运行它,输入数据库名称、用户和密码,它将排序规则从更改utf8mb4/utf8mb4_unicode_ci为utf8/utf8_general_ci
utf8mb4/utf8mb4_unicode_ci
utf8/utf8_general_ci
<!DOCTYPE html> <html> <head> <title>DB-Convert</title> <style> body { font-family:"Courier New", Courier, monospace; } </style> </head> <body> <h1>Convert your Database to utf8_general_ci!</h1> <form action="db-convert.php" method="post"> dbname: <input type="text" name="dbname"><br> dbuser: <input type="text" name="dbuser"><br> dbpass: <input type="text" name="dbpassword"><br> <input type="submit"> </form> </body> </html> <?php if ($_POST) { $dbname = $_POST['dbname']; $dbuser = $_POST['dbuser']; $dbpassword = $_POST['dbpassword']; $con = mysql_connect('localhost',$dbuser,$dbpassword); if(!$con) { echo "Cannot connect to the database ";die();} mysql_select_db($dbname); $result=mysql_query('show tables'); while($tables = mysql_fetch_array($result)) { foreach ($tables as $key => $value) { mysql_query("ALTER TABLE $value CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci"); }} echo "<script>alert('The collation of your database has been successfully changed!');</script>"; } ?>