mysql

mysql安裝

安裝步驟

注意:以下操作用戶爲root

1.解壓文件
tar -zvf mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz

2.移動文件到/usr/local/mysql
mv mysql-5.6.33-linux-glibc2.5-x86_64 /usr/local/mysql

3.添加系統mysql組和mysql用戶
groupadd mysql
useradd -r -g mysql mysql
// useradd -g mysql -M mysql

4.將文件存放到/home/yk/mysql/data,並授權
mkdir -p /home/yk/mysql/data
chown -R mysql:mysql /home/yk/mysql/data

5.初始化mysql數據庫
cd /usr/local/mysql/scripts]
./mysql_install_db --basedir=/usr/local/mysql --datadir=/home/yk/mysql/data --user=mysql

如果報錯:
/usr/local/mysql/scripts/mysql_install_db:/usr/bin/perl:壞的解釋器:沒有那個文件或目錄
解決:yum install perl

如果報錯:
FATAL ERROR:please install the following Perl modules before executing 
/usr/local/mysql/scripts/mysql_install_db
解決:yum -y install perl-Module-Install.noarch

6.相關配置
[/usr/local/mysql/my.cnf]
basedir = /usr/local/mysql
datadir = /home/yk/mysql/data
port = 3306

7.添加mysqld成爲系統服務,並設置mysql自啓動
將mysql服務啓動文件放到/etc/init.d目錄中
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
將mysqld作爲linux的服務
chkconfig --add mysqld
將mysqld服務作爲自啓動服務
chkconfig mysqld on

出現以下錯誤:
chmod:無法訪問“/var/log/mariadb/mariadb.log":沒有那個文件或目錄
解決辦法: mkdir /var/log/mariadb

chkconfig --list            顯示服務列表
如果看到mysql的服務,並且3,4,5都是on的話則成功,如果是off,則鍵入
chkconfig --level 345 mysql on

8.啓動服務
/etc/init.d/mysqld start
ps -ef|grep mysql 看到mysql服務說明啓動成功

9.設置密碼
/usr/local/mysql/bin/mysqladmin -u root password "1234"
出現以下錯誤:
/usr/local/mysql/bin/mysqladmin: connect to server at 'localhost' failed
error:Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)'
Check that mysqld is running and the socket:'/tmp/mysql.scok‘ exists !

find / -name mysql.sock
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock

/usr/local/mysql/bin/mysqladmin -u root password "1234"
service mysqld restart

10.內部可用
mysql -uroot -p1234
-bash:mysql:未找到命令
cd /usr/local/mysql
echo "export MYSQL_HOME=/usr/local/mysql" >> /etc/profile
echo "export PATH=$PATH:$MYSQL_HOME/bin" >> /etc/profile

11.成功了!
[root@master106 bin]# mysql -uroot -p1234
Warning: Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.6.42 MySQL Community Server (GPL)

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

12.外部連接

開啓遠程訪問
登錄數據庫
mysql -uroot -p1234
mysql>use mysql
// %爲所有ip都能夠訪問
mysql>update user set host = '%' where user = 'root';
或者直接添加一條語句
mysql>insert into user(host,user,password)values('172.16.2.106','root',password('1234'));

//查看修改
mysql>select host,user from user;
// 推送設置到內存或者重啓服務器也行
mysql>FLUSH PRIVILEGES

(推薦使用)
http://www.cnblogs.com/ycsfwhh/archive/2012/08/07/2626597.html

GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
mysql>FLUSH PRIVILEGES 
 
*.* 所有數據庫下的所有表
myuser 哪一個用戶可以訪問
% 哪些主機可以訪問,如果希望某一臺主機可以訪問,將%改成ip地址
mypassword:訪問者以什麼密碼訪問
  1. 默認時,mysql安裝完成後,會在mysql.user表中有多個用戶存在,表示本機的用戶就會有幾個,當用戶連接mysql時候,有可能找到沒有設置密碼的數據,就會存在,有的人能夠連接,有的人連接不上。所以爲了統一。把mysql.user表中密碼爲空的用戶進行刪除。也可以只留下%的用戶。
    mysql>delete from mysql.user where host <> %;
    最好在刪除之後,將mysql服務重啓
    mysql>service mysqld restart
    在這裏插入圖片描述
http://www.cnblogs.com/ycsfwhh/archive/2012/08/07/2626597.html
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章