本文目錄一覽:
- 1、linux上怎麼部署mysql
- 2、linux怎麼安裝mysql
- 3、怎樣在Linux環境下安裝部署MySQL資料庫系統
- 4、如何在linux下安裝mysql資料庫並配置
- 5、linux 怎麼部署mysql資料庫
- 6、怎麼在linux上安裝mysql
linux上怎麼部署mysql
我這是centos系統,ubantu不適用!!!
我這是centos系統,ubantu不適用!!!
我這是centos系統,ubantu不適用!!!
點擊右下角展開,否則沒有自動換行!!!!
點擊右下角展開,否則沒有自動換行!!!!
點擊右下角展開,否則沒有自動換行!!!!
重要的事情說三遍
練慣用的話直接yum -y install mysql mysql-server
也可以使用源碼安裝
先把rpm格式的mysql刪除,否則初始化失敗rpm -e mysql-server mysql –nodeps //忽略依賴關係刪除
yum -y install ncurses-devel //安裝依賴包
tar xf cmake-2.8.12.tar.gz -C /usr/src/ //mysql需要cmake支持
cd /usr/src/cmake-2.8.12/ //進入解壓路徑
./configure gmake gmake install //安裝cmake
groupadd mysql //創建mysql組
useradd -M -s /sbin/nologin -g mysql mysql //創建mysql用戶,並加入mysql組裡
tar xf mysql-5.7.2-m12.tar.gz -C /usr/src/ //解壓mysqlcd /usr/src/mysql-5.7.2-m12/ //進入解壓路徑
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DSYSCONFDIR=/etc make make install //安裝選項
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //主程序安裝目錄
-DDEFAULT_CHARSET=utf8 //默認字符集為 utf8
-DDEFAULT_COLLATION=utf8_general_ci //默認的字符集校對規則
-DWITH_EXTRA_CHARSETS=all //安裝所有字符集
-DSYSCONFDIR=/etc //配置文件存放目錄
make make install //開始make
優化步驟
cp support-files/my-default.cnf /etc/my.cnf
cp support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
echo “PATH=$PATH:/usr/local/mysql/bin” /etc/profile
. /etc/profile //注意「.」後面有空格
chown -R mysql:mysql /usr/local/mysql/
/usr/local/mysql/scripts/mysql_install_db –basedir=/usr/local/mysql/ –datadir=/usr/local/mysql/data –user=mysql //初始化
–basedir=/usr/local/mysql/ //指定安裝目錄(產品目錄)
–datadir=/usr/local/mysql/data //指定數據目錄
–user=mysql //指定用戶身份
service mysqld start
Starting MySQL………….. [確定]
mysqladmin -u root password ‘123456’ //設置成自己的密碼
我是5.7的版本有可能一定幾率啟動時報錯,看下mysql的配置文件,裡面的mysql.sock文件找不到,解決方法如下:
find / -name mysql.sock
找到後複製這個路徑
vim /etc/my.cnf
找到sock=/data/sock這一行,把後面的路徑改成剛才找到的路徑然後重啟mysql即可。
如果還報錯就告訴我
linux怎麼安裝mysql
一般有下面幾種方法:(以紅帽系Linux為例)
1、yum install mysql mysql-server
這種版本通常比較舊
2、rpm包離線安裝
需要先去MySQL官網下載rpm包
3、源碼編譯安裝
需要先去MySQL官網下載源碼
詳細安裝方法建議百度搜一下MySQL安裝教程。
怎樣在Linux環境下安裝部署MySQL資料庫系統
在Linux安裝軟體需要預先做好如下一些準備:準備好Linux操作系統如:CentOS7。配置好yum源。
完成上述準備後,就可以動手安裝MySQL資料庫了。主要安裝步驟如下:
1. 禁用selinux
setenforce 0
2. 上傳安裝文件到Linux
3.解壓rpm包
tar -xvf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar
4.安裝軟體
yum install mysql-community-{libs,client,common,server}-*.rpm
5.啟動mysql資料庫初始化
systemctl start mysqld
6.修改vi /etc/my.cnf
添加:
[mysqld]
#可以在表中錄入中文
character-set-server=utf8 #
explicit-defaults-for-timestamp
# 禁用當前密碼認證策略,可以使用簡單密碼(生產環境不適用)
validate_password=0
7.重啟mysql服務
systemctl restart mysqld
8.找臨時登錄密碼
grep -i “temporary password” /var/log/mysqld.log
9.連接MySQL資料庫
mysql -uroot -p 輸入臨時密碼
10.修改root用戶登錄密碼為簡單密碼(生產環境不適用)
alter user root@localhost identified by ”;
11.配置MYSQL_PS1環境變數
修改家目錄下:.bash_profile文件,添加
export MYSQL_PS1=”\u@\h[\d]”
12.使新環境變數生效
source /root/.bash_profile
13.重新連接mysql驗證
mysql -uroot -p
除了上述安裝方式以外,可能在公司中會遇到安裝指定版本的需求,那麼如何安裝指定版本的MySQL數據呢?這時我們可以採用下載指定版本安裝包進行安裝的方式,主要步驟如下,假設CentOS7 linux最小安裝,已經配置好yum。首先檢查是否安裝numactl包
rpm -qa|grep numactl
yum install numactl-libs-* # 如果沒有安裝需要安裝。檢查是否安裝libaio包
rpm -qa|grep libaio
yum install libaio-* # 如果沒有安裝需要安裝
具體安裝步驟如下:
* 禁用selinux
setenforce 0
* 上傳安裝文件到Linux
mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
* 創建mysql用戶組和用戶
groupadd -g 27 -r mysql
#-r創建系統賬戶,-M 不創建用戶家目錄 -N 不創建和用戶名一樣的用戶組
useradd -M -N -g mysql -r -s /bin/false -c “MySQL Server” -u 27 mysql
id mysql
* 上傳安裝包到root家目錄
* 解壓二進位文件到/usr/local
tar -zxvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz -C /usr/local
* 解壓目錄改名為mysql
cd /usr/local
ls -l
mv mysql-5.7.26-linux-glibc2.12-x86_64/ mysql
* 環境變數中添加mysql/bin目錄
vi /root/.bash_profile
修改PATH=/usr/local/mysql/bin:$PATH:$HOME/bin
添加 export MYSQL_PS1=”\u@\h[\d]”
source /root/.bash_profile
* 創建/usr/local/mysql/etc/my.cnf選項文件 (也可以使用默認的/etc/my.cnf選項文件)
mkdir -p /usr/local/mysql/etc
mkdir -p /usr/local/mysql/mysql-files
* 編輯選項文件my.cnf填寫默認選項
vi /usr/local/mysql/etc/my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/usr/local/mysql/data/mysql.sock
log-error=/usr/local/mysql/data/mysqld.err
pid-file=/usr/local/mysql/data/mysqld.pid
secure_file_priv=/usr/local/mysql/mysql-files
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
Explicit-defaults-for-timestamp
character-set-server=utf8
[mysql]
socket=/usr/local/mysql/data/mysql.sock
* 初始化數據目錄
cd /usr/local/mysql
mkdir data
chmod 750 data
chown mysql:mysql data
* 初始化資料庫
cd /usr/local/mysql
bin/mysqld –defaults-file=/usr/local/mysql/etc/my.cnf –initialize
* 使用systemd管理mysql
例如:systemctl {start|stop|restart|status} mysqld
cd /usr/lib/systemd/system
touch mysqld.service
chmod 644 mysqld.service
vi mysqld.service
# 添加以下內容
[Unit]
Description=MySQL Server
Documentation=man:mysqld(7)
Documentation=
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
Type=forking
PIDFile=/usr/local/mysql/data/mysqld.pid
# Disable service start and stop timeout logic of systemd for mysqld service.
TimeoutSec=0
# Start main service
ExecStart=/usr/local/mysql/bin/mysqld –defaults-file=/usr/local/mysql/etc/my.cnf –daemonize –pid-file=/usr/local/mysql/data/mysqld.pid $MYSQLD_OPTS
# Use this to switch malloc implementation
EnvironmentFile=-/etc/sysconfig/mysql
# Sets open_files_limit
LimitNOFILE = 65535
Restart=on-failure
RestartPreventExitStatus=1
PrivateTmp=false
以上內容中注意:The –pid-file option specified in the my.cnf configuration file is ignored by systemd.
默認:LimitNOFILE = 5000,如果連接數(max_connection)需要調大,可以將LimitNOFILE 設置為最大65535
* 創建mysql.conf文件
cd /usr/lib/tmpfiles.d
#Add a configuration file for the systemd tmpfiles feature. The file is named mysql.conf and is placed in /usr/lib/tmpfiles.d.
cd /usr/lib/tmpfiles.d
touch mysql.conf
chmod 644 mysql.conf
* mysql.conf添加內容
vi mysql.conf
添加以下語句:
d /usr/local/mysql/data 0750 mysql mysql –
* 使新添加的mysqld服務開機啟動
systemctl enable mysqld.service
* 手動啟動mysqld
systemctl start mysqld
systemctl status mysqld
* 獲得mysql臨時登錄密碼
cat /usr/local/mysql/data/mysqld.err | grep “temporary password”
* 客戶端登錄連接mysql伺服器
mysql -uroot -p
輸入臨時密碼
* 修改MySQL用戶root@localhost密碼
mysql alter user root@localhost identified by ”; #此處為了方便設置為空密碼
* 測試新密碼連接MySQL服務
mysql -uroot -p
至此,我們就完成了在Linux環境下安裝MySQL的任務。通過這兩種方式我們可以體會到在Linux環境下安裝軟體的基本思路及方法。
如何在linux下安裝mysql資料庫並配置
在linux下安裝mysql資料庫並配置的流程比較繁瑣,需要耐心調試,具體方法和步驟如下:
1.查找以前是否安裝有mysql,使用下面命令:
rpm -qa|grep -i mysql
如果顯示有如下包則說明已安裝mysql
mysql-4.1.12-3.RHEL4.1
mysqlclient10-3.23.58-4.RHEL4.1
2.如果已安裝,則需要刪除已安裝的資料庫,使用以下命令來刪除資料庫
刪除命令:rpm -e –nodeps 包名
( rpm -ev mysql-4.1.12-3.RHEL4.1 )
刪除老版本mysql的開發頭文件和庫
命令:rm -fr /usr/lib/mysql
rm -fr /usr/include/mysql
注意:卸載後/var/lib/mysql中的數據及/etc/my.cnf不會刪除,如果確定沒用後就手工刪除
rm -f /etc/my.cnf
rm -fr /var/lib/mysql
3.下載mysql的rpm包
可以通過wget下載具體的地址因為不能用鏈接請大家去官網去找
(1)MySQL-server-5.6.10-1.rhel5.x86_64.rpm:MySQL伺服器;
(2)MySQL-client-5.6.10-1.rhel5.x86_64.rpm:MySQL客戶端;
(3)MySQL-devel-5.6.10-1.rhel5.x86_64.rpm:Mysql開發依賴包。
下載後放到Liunx伺服器中。
4.安裝MySQL Server的rpm包
rpm -ivh MySQL-server-5.6.21-1.linux_glibc2.5.x86_64.rpm
安裝完成後會生成root用戶的隨機密碼,請使用「cat /root/.mysql_secret」或類似命令進行查看。
5.安裝MySQL客戶端
rpm -ivh MySQL-client-5.6.21-1.linux_glibc2.5.x86_64.rpm
6.安裝MySQL開發依賴包
rpm -ivh MySQL-devel-5.6.21-1.linux_glibc2.5.x86_64.rpm
7.啟動msyql
安裝完成後mysql是沒有啟動的,運行mysql命令會提示如下錯誤:
ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)
可使用如下命令啟動MySQL:
service mysql start
或者使用如下命令:
/etc/init.d/mysql start
可使用SET PASSWORD命令修改root用戶的密碼,參考如下:SET PASSWORD = PASSWORD(‘root123456’);
8.登錄MySQL
使用mysql命令登錄MySQL伺服器,運行MySQL的命令時,會提示需要設置root用戶密碼。
9.設置開機自啟動
/etc/init.d/mysql start
設置完成後重啟系統,使用natstat –nat命令可看到MySQL的3306埠。
10.至此已經安裝好了mysql資料庫,當然現在我們的資料庫還不支持遠程連接,遠程連接會出現以下代碼:1130,ERROR 1130: Host 192.168.0.10 is not allowed to connect to this MySQL server,可以通過以下以下來解決。
11.改表法:在本機登入mysql後,更改「mysql」資料庫里的「user」表裡的「host」項,從」localhost」改為’%’。
mysql
mysqluse mysql;
mysqlselect ‘host’ from user where user=’root
12.到此為止,mysql資料庫在linux中安裝完畢。
linux 怎麼部署mysql資料庫
創建用於執行mysql服務程序的帳號:
[root@linuxprobe cmake-2.8.11.2]# cd ..
[root@linuxprobe src]# useradd mysql -s /sbin/nologin
創建資料庫程序和文件的目錄,並設置目錄的所屬與所組:
[root@linuxprobe src]# mkdir -p /usr/local/mysql/var
[root@linuxprobe src]# chown -Rf mysql:mysql /usr/local/mysql
安裝Mysql服務程序(解壓與編譯過程已省略):
[root@linuxprobe src]# tar xzvf mysql-5.6.19.tar.gz
[root@linuxprobe src]# cd mysql-5.6.19/
[root@linuxprobe mysql-5.6.19]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/var -DSYSCONFDIR=/etc
[root@linuxprobe mysql-5.6.19]# make
[root@linuxprobe mysql-5.6.19]# make install
刪除系統默認的配置文件:
[root@linuxprobe mysql-5.6.19]# rm -rf /etc/my.cnf
生成系統資料庫(生成信息已省略):
[root@linuxprobe mysql-5.6.19]# cd /usr/local/mysql
[root@linuxprobe mysql]# ./scripts/mysql_install_db –user=mysql –basedir=/usr/local/mysql –datadir=/usr/local/mysql/var
創建配置文件的軟連接文件:
[root@linuxprobe mysql]# ln -s my.cnf /etc/my.cnf
將mysqld服務程序添加到開機啟動項:
[root@linuxprobe mysql]# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
[root@linuxprobe mysql]# chmod 755 /etc/init.d/mysqld
[root@linuxprobe mysql]# chkconfig mysqld on
編輯啟動項的配置文件:
[root@linuxprobe mysql]# vim /etc/rc.d/init.d/mysqld
//分別修改第46與47行,basedir為程序安裝路徑,datadir為資料庫存放目錄。
basedir=/usr/local/mysql
datadir=/usr/local/mysql/var
重啟mysqld服務程序:
[root@localhost mysql]# service mysqld start
Starting MySQL. SUCCESS!
把mysql服務程序命令目錄添加到環境變數中(永久生效):
[root@linuxprobe mysql]# vim /etc/profile
//在配置文件的最下面追加:
export PATH=$PATH:/usr/local/mysql/bin
[root@linuxprobe mysql]# source /etc/profile
將mysqld服務程序的庫文件鏈接到默認的位置:
[root@linuxprobe mysql]# mkdir /var/lib/mysql
[root@linuxprobe mysql]# ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql
[root@linuxprobe mysql]# ln -s /usr/local/mysql/include/mysql /usr/include/mysql
[root@linuxprobe mysql]# ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock
初始化mysqld服務程序:
[root@linuxprobe mysql]# mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MySQL to secure it, we’ll need the current
password for the root user. If you’ve just installed MySQL, and
you haven’t set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none):
OK, successfully used password, moving on…
Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorisation.
Set root password? [Y/n] y
New password: 輸入要為root用戶設置的資料庫密碼。
Re-enter new password: 重複再輸入一次密碼。
Password updated successfully!
Reloading privilege tables..
… Success!
By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] y(刪除匿名帳號)
… Success!
Normally, root should only be allowed to connect from ‘localhost’. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] y(禁止root用戶從遠程登陸)
… Success!
By default, MySQL comes with a database named ‘test’ that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] y(刪除test資料庫並取消對其的訪問許可權)
– Dropping test database…
… Success!
– Removing privileges on test database…
… Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] y(刷新授權表,讓初始化後的設定立即生效)
… Success!
All done! If you’ve completed all of the above steps, your MySQL
installation should now be secure.
Thanks for using MySQL!
Cleaning up…
可以百度搜索Linux就該這麼學,第9章 使用Apache服務部署靜態網站,裡面有部署mysql的資料
怎麼在linux上安裝mysql
如果是 centos的系統 如果在線的話可以用 yum在線源的 RPM進行安裝,如果沒有可以先下載mysql的rpm進行離線安裝,不過離線安裝會涉及到很多依賴包的下載安裝等
如果是 ubuntu的系統 同樣可以用 yum在線源的 apt-get 進行安裝,或者下載deb包進行離線安裝,同樣涉及依賴包的安裝
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/258418.html