日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

centos下安装mysql_centos下安装mysql服务器的方法

發(fā)布時間:2025/3/19 数据库 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 centos下安装mysql_centos下安装mysql服务器的方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

項目需要就在現有的服務器上面重新安裝了個mysql服務器,還挺費勁兒呢,因為之前都是在我的筆記本上面試驗的,它的系統(tǒng)是Ubuntu的,什么路徑啊,啟動方式啊。都不一樣所以這次還是讓我糾結了一把:

下面把我安裝過程中遇到的問題給傳上來,

首先rpm格式安裝就不多說了,主要是mysql的配置文件在:/etc/my.cnf這里,需要修改:

[mysqld]

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

# Default to using old password format for compatibility with mysql 3.x

# clients (those using the mysqlclient10 compatibility package).

old_passwords=1  ← 找到這一行,在這一行的下面添加新的規(guī)則,讓MySQL的默認編碼為UTF-8

default-character-set = utf8  ← 添加這一行

然后在配置文件的文尾填加如下語句:

[mysql]

default-character-set = utf8

然后我就直接啟動mysql了,還以為是Ubuntu的那樣呢,安裝后自動啟動,可是centos不一樣,服務沒有啟動所以就抱錯了。

[root@fsailing1 init.d]# mysql -u root

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

這個錯誤之前遇到過,就是因為錯誤或者其他的什么原因,mysql服務器沒有啟動造成的。

接著啟動mysql服務:

root@fsailing1 init.d]# /etc/rc.d/init.d/mysqld start

啟動 MySQL:?????????????????????????????????????????????? [確定]

[root@fsailing1 init.d]# ps -ef |grep mysql

root????? 1949???? 1? 0 22:21 pts/1??? 00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --socket=/var/lib/mysql/mysql.sock --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --user=mysql

mysql???? 2002? 1949? 1 22:21 pts/1??? 00:00:00 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --skip-external-locking --socket=/var/lib/mysql/mysql.sock

root????? 2020? 1101? 0 22:21 pts/1??? 00:00:00 grep mysql

啟動方式有很多種:service方式service mysqld start 和安全方式:/usr/bin/mysqld_safe &

通過啟動服務的后綴我們可以清楚的看到,數據庫放在那里,錯誤日志在哪里,

完事之后,要看看字符集的問題(這個問題至今我還沒有搞清楚呢)。是否匹配:

mysql> show variables like 'character%';

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

| Variable_name??????????? | Value????????????????????? |

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

| character_set_client???? | latin1???????????????????? |

| character_set_connection | latin1???????????????????? |

| character_set_database?? | utf8?????????????????????? |

| character_set_filesystem | binary???????????????????? |

| character_set_results??? | latin1???????????????????? |

| character_set_server???? | utf8?????????????????????? |

| character_set_system???? | utf8?????????????????????? |

| character_sets_dir?????? | /usr/share/mysql/charsets/ |

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

8 rows in set (0.00 sec)

這種情況是不行的,我們只是改變了服務器的字符集,沒有改變客戶端的字符集。

修改my.cnf文件后,重啟mysql服務器后得知:

mysql> show variables like 'character%';

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

| Variable_name??????????? | Value????????????????????? |

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

| character_set_client???? | utf8?????????????????????? |

| character_set_connection | utf8?????????????????????? |

| character_set_database?? | utf8?????????????????????? |

| character_set_filesystem | binary???????????????????? |

| character_set_results??? | utf8?????????????????????? |

| character_set_server???? | utf8?????????????????????? |

| character_set_system???? | utf8?????????????????????? |

| character_sets_dir?????? | /usr/share/mysql/charsets/ |

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

8 rows in set (0.00 sec)

這樣就算是完成了,字符集的配置了。然后呢就是密碼和授權問題了。

查看用戶密碼:

mysql> select host, user ,password from user;

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

| host????? | user | password |

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

| localhost | root |????????? |

| fsailing1 | root |????????? |

| 127.0.0.1 | root |????????? |

| localhost |????? |????????? |

| fsailing1 |????? |????????? |

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

5 rows in set (0.00 sec)

這里用戶和密碼有的是空的,怪不得不需要任何驗證都能夠登錄到服務器上去,這是很不安全的。所以要刪除這些不安全的用戶

mysql> delete from user where user='';

Query OK, 2 rows affected (0.00 sec)

mysql> select host, user ,password from user;

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

| host????? | user | password |

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

| localhost | root |????????? |

| fsailing1 | root |????????? |

| 127.0.0.1 | root |????????? |

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

3 rows in set (0.00 sec)

然后是設置現有的用戶密碼:這里可以update,set都行。

mysql> update user set password='123' where host='localhost';

Query OK, 1 row affected (0.00 sec)

Rows matched: 1? Changed: 1? Warnings: 0

mysql> select host, user ,password from user;

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

| host????? | user | password |

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

| localhost | root | 123????? |

| fsailing1 | root |????????? |

| 127.0.0.1 | root |????????? |

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

3 rows in set (0.00 sec)

這里我一看傻眼了,沒有經過md5碼加密呢,算了這里還只能用set進行設置密碼呢。

mysql> set password for root@localhost=password('123');

Query OK, 0 rows affected (0.00 sec)

mysql> select host, user ,password from user;

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

| host????? | user | password???????? |

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

| localhost | root | 773359240eb9a1d9 |

| fsailing1 | root |????????????????? |

| 127.0.0.1 | root |????????????????? |

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

3 rows in set (0.00 sec)

到這里該做的基本上就算是完事了。

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的centos下安装mysql_centos下安装mysql服务器的方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。