标签归档:mysql

ubuntu18设置mysql登录方法

在ubuntu18中安装mysql没有提示输入密码,而在使用过程中发现只有 sudo mysql能登录,解决方法:

mysql> select User,Host,plugin from user;
+------------------+-----------+-----------------------+
| User             | Host      | plugin                |
+------------------+-----------+-----------------------+
| root             | localhost | mysql_native_password |
| mysql.session    | localhost | mysql_native_password |
| mysql.sys        | localhost | mysql_native_password |
| debian-sys-maint | localhost | mysql_native_password |
+------------------+-----------+-----------------------+

查看plugin 是不是 mysql_native_password,如果不是更改是,然后刷新权限,就能够使用 mysql -u root -p的方式登录了。

修改mysql密码

方法1: 用SET PASSWORD命令

首先登录MySQL。

格式:mysql> set password for 用户名@localhost = password(‘新密码’);

例子:mysql> set password for root@localhost = password(‘123’);

方法2:用mysqladmin

格式:mysqladmin -u用户名 -p旧密码 password 新密码

例子:mysqladmin -uroot -p123456 password 123

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

首先登录MySQL。

mysql> use mysql;

mysql> update user set password=password(‘123′) where user=’root’ and host=’localhost’;

mysql> flush privileges;

迁移wordpress

第一步:转移文件夹
压缩 WordPress文件夹,转移到目标服务器。

第二步:转移数据库
1.导出数据库

mysqldump -uroot -p 数据库名 > 本地文件名.sql

2.导入数据库,在mysql中创建一个数据库,然后导入sql文件:

use 数据库名
source 本地sql文件路径

第三步:数据库中附件更改路径。

进入数据库,use 数据库名
UPDATE wp_posts SET post_content=replace(post_content,'旧网址','新网址')

mysql在debian上安装之后设置密码

mysql在debian上已经用上了开源社区维护的版本,mariadb 采用gpl协议。

安装时没有提示密码,我们可以使用 $sudo mysql -u root -p来登录,默认密码为空,注意是sudo。
设置新密码:

sudo mysqladmin -uroot -p password

来设置初始密码,注意上面的 password不是用来替换为初始密码的,原句输入命令就可以了,下面才要提示输入初始密码。

设置MySQL 的默认字符集为 utf8mb4

在看 wordpress源码的时候,看到 uft8mb4,才发现原来mysql里面的utf8只支持3个自己,这意味着可能有一些字符会出现问题。如果使用新版本的 mysql可以把 mysql的默认编码设置为 utf8mb4。之前参考这个篇文章 http://baozhuwanglei.com/archives/67-ubuntu%e4%b8%8b%e4%bf%ae%e6%94%b9-mysql%e9%bb%98%e8%ae%a4%e5%ad%97%e7%ac%a6%e9%9b%86.html 是设置mysql的默认字符集为 utf8。

我们同样找到 /etc/mysql 文件夹下面,找到有 [mysql]标签和 [mysqld]标签的配置文件

在 [mysql]标签中加入:
default-character-set = utf8mb4
在 [mysqld]标签下加入或者修改:
character-set-server = utf8mb4

之后依然 sudo service mysql restart 一下,登录进入,输入命令:

show variables like 'collation_%';

如果显示如下:

mysql> show variables like 'collation_%';
+----------------------+--------------------+
| Variable_name        | Value              |
+----------------------+--------------------+
| collation_connection | utf8mb4_general_ci |
| collation_database   | utf8mb4_general_ci |
| collation_server     | utf8mb4_general_ci |
+----------------------+--------------------+
3 rows in set (0.01 sec)

就说明配置成功了。

Ubuntu下修改 mysql默认字符集

在 /etc/mysql文件夹下找到相关的配置文件,找到 [mysqld] 标签,在 [mysqld]标签下面加入下面一条语句:

character_set_server=utf8

注意应该使用 sudo 获取超级用户权限。之后重启 mysql 服务器

$sudo service mysql restart

最后就可以登录服务器:

mysql -u root -p 密码

,使用命令:

show variables like 'collation_%';

,如果显示的结果如下:

+----------------------+-----------------+
| Variable_name        | Value           |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database   | utf8_general_ci |
| collation_server     | utf8_general_ci |
+----------------------+-----------------+
3 rows in set (0.00 sec)

说明配置成功了。