ubuntu下修改mysql的密碼

2021-09-29 00:01:16 字數 1553 閱讀 7137

環境

ubuntu

情景忘記mysql root使用者密碼,現在需要重置root使用者密碼

解決1、停止mysql服務

$ service mysql stop

12、修改my.cnf檔案

# 查詢my.cnf檔案在**

$ find / -name my.cnf

/var/lib/dpkg/alternatives/my.cnf

/etc/alternatives/my.cnf

/etc/mysql/my.cnf

# 修改my.cnf檔案,在檔案新增 skip-grant-tables,在啟動mysql時不啟動grant-tables,授權表

$ vim /etc/mysql/my.cnf

[mysqld]

skip-grant-tables

3、啟動mysql服務

$ service mysql restart

14、更改mysql root使用者密碼

$ mysql

# 選擇mysql資料庫

mysql> use mysql;

# 更改user表中root使用者密碼

mysql> update user set authentication_string=password("new_pass") where user='root';

# 注意:可能不同的資料庫版本密碼的欄位名稱不一樣

# 我的資料庫版本是5.7.21,user表中的密碼欄位是:authentication_string

mysql> select version();

+-------------------------+

| version()               |

+-------------------------+

| 5.7.21-0ubuntu0.16.04.1 |

+-------------------------+

1 row in set (0.00 sec)

# 可以通過以下命令檢視user表的密碼欄位名稱

mysql> show create table user\g;

5、再次修改my.cnf檔案

需要把my.cnf配置檔案改回去,我們把skip-grant-tables注釋掉就可以了

$ vim /etc/mysql/my.cnf

[mysqld]

# skip-grant-tables12

36、再次重啟mysql

$ service mysql restart

# 現在我們可以用新root密碼登入mysql了

$ mysql -u root -p

這裡修改的密碼只能在本機上使用,遠端連線的密碼還是原來的老密碼,下面的語句可以讓密碼在遠端裡面的情況下也生效

grant all privileges on *.* to 'root'@'%' identified by '000000' with grant option;

query ok, 0 rows affected, 1 warning (0.00 sec)

ubuntu下修改mysql編碼格式的問題

ubuntu下mysql版本預設使用字符集為latin1,我用了一下兩個命令依然無法修改 set names utf8 charset utf8 於是參考網上修改配置檔案.我先是參照某部落格修改然後重啟mysql.結果可以重啟,但是使用mysql u root p進入失敗,顯示錯誤 error 20...

Ubuntu下修改mysql的字符集

show variables like character 修改mysql的配置 在etc mysql 下找到mysql.conf.d python ubuntu cd etc mysql python ubuntu etc mysql ls conf.d debian.cnf debian sta...

ubuntu下修改mysql5 7的密碼

首先,修改mysql配置文 vim etc mysql mysql.conf.d mysqld.cnf在skip external locking的下一行新增skip grant tables,跳過密碼校驗 user mysql pid file var run mysqld mysqld.pid ...