服務器安裝部署mysql

服務器安裝部署mysql

1、下載地址

https://www.mysql.com/downloads/
選擇community  server

在這裏插入圖片描述

2、選擇版本,當前選擇的5.7版本

在這裏插入圖片描述

3、點擊DOWLOAD

在這裏插入圖片描述

4、點擊下載mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz,選擇no thanks

在這裏插入圖片描述

5、將 mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz 上傳到 /usr/local 目錄下(可以使用wget下載不同版本)

rz -y
tar -xzf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

在這裏插入圖片描述

6、使用命令,對mysqll文件夾進行重命名

mv mysql-5.7.24-linux-glibc2.12-x86_64 mysql

這個時候達到的效果是/usr/local/mysql/..(一堆解壓開的文件)

7、添加用戶組和用戶

#添加用戶組
groupadd mysql
#添加用戶mysql 到用戶組mysql
useradd -g mysql mysql

8、安裝

#在/usr/local/mysql目錄下新建data文件夾,以後的數據庫文件將放在這裏

mkdir data

依次執行以下命令:

[root@instance_4dbde0 mysql]# chown -R mysql:mysql ./

#mysql_install_db 被廢棄了,取而代之的是 mysqld –-initialize	
[root@instance_4dbde0 mysql]# ./bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

#將mysql/目錄下除了data/目錄的所有文件,改回root用戶所有
[root@instance_4dbde0 mysql]# chown -R root .

#mysql用戶只需作爲mysql/data/目錄下所有文件的所有者
[root@instance_4dbde0 mysql]# chown -R mysql data

#複製啓動文件
[root@instance_4dbde0 mysql]# cp support-files/mysql.server /etc/init.d/mysqld 

[root@instance_4dbde0 mysq]# chmod 755 /etc/init.d/mysqld

[root@instance_4dbde0 bin]# cp /usr/local/mysql/bin/my_print_defaults /usr/bin/

#修改啓動腳本
[root@instance_4dbde0 mysql]# vim /etc/init.d/mysqld

#修改項:
basedir=/usr/local/mysql/
datadir=/usr/local/mysql/data
port=3306

#啓動服務
[root@instance_4dbde0 mysql]# service mysqld start

#加入環境變量,編輯 /etc/profile,這樣可以在任何地方用mysql命令了
[root@instance_4dbde0 mysql]# vim /etc/profile

#添加mysql路徑
export PATH=$PATH:/usr/local/mysql/bin

#刷新立即生效
[root@instance_4dbde0 mysql]# source /etc/profile

 配置以上信息之後,基本就可以啓動了mysql(如果不能啓動,請看最後的配置文件),但是現在還缺少mysql的配置文件,即my.cnf文件(沒有它Mysql也可以使用內置的默認參數啓動),最後說

接下來就可以使用命令登錄mysql了

[root@instance_4dbde0 bin]# mysql -uroot -p
Enter password: 

#如果登不進去,則改my.cnf配置文件,跳過驗證登錄,在[mysqld]後面任意一行添加“skip-grant-tables”用來跳過密碼驗證的過程,如下圖所示:

vim /etc/my.cnf  添加 skip-grant-tables 

在這裏插入圖片描述

#重新啓動,登錄

ps -ef | grep mysql
kill -9 (進程號)
service mysqld start
mysql -uroot

#修改密碼

use mysql;
update user set authentication_string=password("新密碼") where user='root'; 
flush privileges;
exit;

在這裏插入圖片描述

注意:登陸成功後如果使用命令出現如下情況

在這裏插入圖片描述

也即:登陸成功後,使用任何命令都出現 1820錯誤:

那麼直接使用如下命令,即可解決

SET PASSWORD = PASSWORD('root');(此時密碼設置爲root)

在這裏插入圖片描述

Mysql權限控制 - 允許用戶遠程連接

在本機先使用root用戶登錄mysql: mysql -u root -p"youpassword" 進行授權操作:

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'youpassword' WITH GRANT OPTION;

重載授權表:

FLUSH PRIVILEGES;  一定要執行!!!

退出mysql數據庫:

exit

mysql主從複製

登錄主機  mysql -u root -p 
輸入密碼...

1.首先修改mysql的配置文件,使其支持二進制日誌功能。

打開主服務器的mysql配置文件:my.conf

代碼:# vim /etc/my.cnf

加入如下代碼:

server-id=1                               1、[必須] 主服務器唯一id
log-bin=mysqlbin                          2、[必須] 啓用二進制日誌 

在這裏插入圖片描述

配置完成,:wq 保存,重啓mysql

ps -ef | grep mysql
kill -9 (進程號)
service mysqld start

登錄從機  mysql -u root -p 
輸入密碼...

配置從服務器的my.cnf,重複步驟1即可,

唯一的區別是,server-id要改成從服務器的ip尾位,即server-id=2;其他兩項是一樣的,保存,並重啓mySQL;

2.在主服務器上爲從服務器分配一個賬號,就像一把鑰匙,從服務器拿着這個鑰匙,才能到主服務器上來共享主服務器的日誌文件。

進入主服務器的mysql界面,

命令: # mysql -u root -p 密碼     //我這裏mysql賬號是root,密碼

在mysql操作界面下,輸入下面一行命令:

GRANT replication slave ON *.* TO 'slave'@'從機數據庫ip' IDENTIFIED BY '密碼';
flush privileges;

在這裏插入圖片描述

3.查看主服務器BIN日誌的信息(執行完之後記錄下這兩值,然後在配置完從服務器之前不要對主服務器進行任何操作,因爲每次操作數據庫時這兩值會發生改變).

show master status;

在這裏插入圖片描述

4.設置從服務器

進入從服務器mysql

mysql -u root -p
輸入密碼...

關閉slave(如果你以前配置過主從的話,一定要先關閉)
stop slave;

輸入下面代碼即可:
change master to master_host='主機數據庫ip',
master_user='zhangsan',
master_password='123456',
master_log_file='mysqlbin.具體數字',
master_log_pos=具體值;

在這裏插入圖片描述

start slave;
show slave status/g;   --key v 鍵值對顯示
上面兩項均爲yes,說明配置成功,否則,請重複前面的步驟。:
                 slave_io_running: yes
                 slave_sql_running:yes

在這裏插入圖片描述

沒有問題的話就成功了

參考鏈接:##

https://www.cnblogs.com/kanyun/p/8075414.html

https://www.cnblogs.com/superfat/p/5267449.html 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章