A Free Trial That Lets You Build Big!
Start building with 50+ products and up to 12 months usage for Elastic Compute Service
If you want to do a Java EE development on Linux, first build the Java EE development environment, including the JDK, Tomcat, Eclipse installation (this in a previous essay has explained in detail the Linux learning CentOS (vii)- CentOS under the Java Environment Build ), if you want to develop a Web project, we can certainly install a myeclipse to the Linux system, this installation method and installation eclipse is identical, there is no record, with the JDK, Tomcat, Eclipse we have been able to carry out our program development, but if you want to do a project, even small can not be small projects are inseparable from the storage of data!!! Yes, we are still one of the most important software is not installed, that is, the database!!! If there is no database, we do the project is simply utopian, so, for the database installation this piece, specifically for the installation of MySQL database wrote this essay ...
First, MySQL Introduction
When it comes to databases, we mostly think of relational databases, such as MySQL, Oracle, SQL Server, and so on, which are very easy to install on Windows, and if you want to install a database on Linux, I have to recommend MySQL database first. And the first version of the MySQL database is distributed on Linux systems.
MySQL is a relational database management system developed by the Swedish MySQL AB company, currently owned by Oracle Corporation. MySQL is an associated database management system that keeps data in separate tables rather than putting all of the data in a large warehouse, which increases speed and increases flexibility. MySQL's SQL language is the most commonly used standardized language for accessing databases. MySQL software uses a dual licensing policy (this term "authorization policy"), it is divided into community and commercial version, because of its small size, speed, low total cost of ownership, especially the open source of this feature, the general small and medium-sized web site development has chosen MySQL as the site database. Thanks to the performance of its community edition, PHP and Apache make a good development environment.
To install MySQL database on Linux, we can download the MySQL database rpm package on its official website, Http://dev.mysql.com/downloads/mysql/5.6.html#downloads, Everyone can download the corresponding database files according to their operating system, the latest version is 5.6.10.
Here I am the installation of MySQL database through Yum, this way to install, can be related to MySQL some services, jar packages are installed to us, so save a lot of unnecessary trouble!!!
Second, uninstall the original MySQL
Because MySQL database is very popular on Linux, so the mainstream Linux version of the current download basically integrates the MySQL database inside, we can use the following command to see if the MySQL database is installed on our operating system
[Email protected] ~]# Rpm-qa | grep mysql//This command will check if the MySQL database is already installed on the operating system
If there is, we can unload it by RPM-E command or rpm-e--nodeps command.
[[email protected] ~] # rpm -e mysql // Normal delete mode [[email protected] ~] # rpm -e --nodeps mysql // Powerful delete mode, if you are prompted to rely on other files when you delete using the above command, you can use this command to delete them forcefully
After the deletion we can pass Rpm-qa | grep mysql command to see if MySQL has been uninstalled successfully!!
Third, the installation of MySQL through Yum
I am using yum to perform MySQL database installation, first we can enter Yum List | grep mysql command to view the downloadable version of the MySQL database available on Yum:
[email protected] ~]# Yum List | grep MySQL
You can get the downloadable version of the MySQL database on the Yum server:
Then we can install the MySQL mysql-server mysql-devel by entering the Yum install-y mysql-server mysql mysql-devel command ( Note: When we installed MySQL, we did not install the MySQL client, which is equivalent to installing the MySQL database, we also need to install the Mysql-server server .
[email protected] ~]# yum install-y mysql-server MySQL Mysql-deve
After waiting for some time, Yum will help us choose the software needed to install the MySQL database and some other ancillary software.
We found that the installation of the MySQL database through the Yum method eliminates a lot of unnecessary hassle, and when the following results occur, the MySQL database installation is successful.
At this point we can view the version of the mysql-server that we just installed with the following command
[Email protected] ~]# Rpm-qi mysql-server
We installed the Mysql-server is not the latest version, if you want to try the latest version, then go to the MySQL website to download rpm package installation, so that our MySQL database has been installed.
Iv. initialization of MySQL database and related configuration
After we install the MySQL database, we will find a mysqld service, this is our database service, we can start our MySQL service by entering the service mysqld Start command.
Note : If we are starting the MySQL service for the first time, the MySQL server will first initialize the configuration, such as:
[[email protected] ~] # service mysqld start Initialize the MySQL database: WARNING: The host ‘xiaoluo’ could not be looked up with resolveip. This probably means that your libc libraries are not 100% compatible with this binary MySQL version. The MySQL daemon, mysqld, should work normally with the exception that host name resolving will not work. This means that you should use IP addresses instead of hostnames when specifying MySQL privileges! Installing MySQL system tables ... OK Filling help tables ... OK To start mysqld at boot time you have to copy support-files / mysql.server to the right place for your system PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER! To do so, start the server, then issue the following commands: / usr / bin / mysqladmin -u root password ‘new-password’ / usr / bin / mysqladmin -u root -h xiaoluo password ‘new-password’ Alternatively you can run: / usr / bin / mysql_secure_installation which will also give you the option of removing the test databases and anonymous user created by default. This is strongly recommended for production servers. See the manual for more instructions. You can start the MySQL daemon with: cd / usr; / usr / bin / mysqld_safe & You can test the MySQL daemon with mysql-test-run.pl cd / usr / mysql-test; perl mysql-test-run.pl Please report any problems with the / usr / bin / mysqlbug script! [determine] Starting mysqld: [OK]
At this point we will see that the first time you start the MySQL server will prompt a lot of information, the purpose is to initialize the MySQL database, when we restart the MySQL service again, will not prompt so much information, such as:
Service mysqld Restart stop mysqld: [OK] starting mysqld: [OK]
When we use MySQL database, we have to start the Mysqld service first, we can through Chkconfig--list | grep mysqld command to see if the MySQL service is booting automatically, such as:
[Email protected] ~]# Chkconfig--list | grep mysqldmysqld 0: Off 1: Off 2: Off 3: Off 4: Off 5: Off 6: Off
We found that the MYSQLD service did not start automatically, and of course we can set it to boot up with the Chkconfig mysqld on command, so you don't have to start it manually every time.
[[email protected] ~]# chkconfig mysqld on[[email protected] ~]# chkconfig--list | grep mysqlmysqld 0: Off 1: Off 2: Enable 3: Enable 4: Enable 5: enable 6: Off
MySQL database after installation will only have a root administrator account, but at this time the root account has not set a password for it, the first time the MySQL service started, the database will be some initialization work, in the output of a large string of information, we see a line of information:
/usr/bin/mysqladmin-u root password ' new-password '//Set password for root account
So we can use this command to set the password for our root account ( Note : This root account is the root account of MySQL, not the root account of Linux)
mysqladmin-u root Password ' Root '//Use this command to set the root account password to root
At this point we can log in to our MySQL database via the mysql-u root-p command.
V. Major configuration files for MySQL database
1./etc/my.cnf This is the main configuration file for MySQL
We can take a look at some information about this file
[[email protected] etc]# ls my.cnf my.cnf [[email protected] etc]# cat my.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid
2. Storage location of database files for/var/lib/mysql MySQL Database
The database files for our MySQL database are usually stored in the/ver/lib/mysql directory.
[[email protected] ~] # cd / var / lib / mysql / [[email protected] mysql] # ls -l Total dosage 20488 -rw-rw ----. 1 mysql mysql 10485760 April 6 22:01 ibdata1 -rw-rw ----. 1 mysql mysql 5242880 April 6 22:01 ib_logfile0 -rw-rw ----. 1 mysql mysql 5242880 April 6 21:59 ib_logfile1 drwx ------. 2 mysql mysql 4096 April 6 21:59 mysql // These two are the default two database files when mysql database is installed srwxrwxrwx. 1 mysql mysql 0 April 6 22:01 mysql.sock drwx ------. 2 mysql mysql 4096 April 6 21:59 test // These two are the default two database files when mysql database is installed
We can create a database ourselves to verify where the database files are stored
Create our own database: mysql> create database xiaoluo; Query OK, 1 row affected (0.00 sec) [[email protected] mysql] # ls -l Total dosage 20492 -rw-rw ----. 1 mysql mysql 10485760 April 6 22:01 ibdata1 -rw-rw ----. 1 mysql mysql 5242880 April 6 22:01 ib_logfile0 -rw-rw ----. 1 mysql mysql 5242880 April 6 21:59 ib_logfile1 drwx ------. 2 mysql mysql 4096 April 6 21:59 mysql srwxrwxrwx. 1 mysql mysql 0 April 6 22:01 mysql.sock drwx ------. 2 mysql mysql 4096 April 6 21:59 test drwx ------. 2 mysql mysql 4096 April 6 22:15 xiaoluo /// This is the xiaoluo database we just created ourselves [[email protected] mysql] # cd xiaoluo / [[email protected] xiaoluo] # ls
3./var/log MySQL database log output storage location
Some of our MySQL database's log output is stored in the/var/log directory
[[email protected] xiaoluo]# cd [[email protected] ~]# cd /var/log [[email protected] log]# ls amanda cron maillog-20130331 spice-vdagent.log anaconda.ifcfg.log cron-20130331 mcelog spooler anaconda.log cups messages spooler-20130331 anaconda.program.log dirsrv messages-20130331 sssd anaconda.storage.log dmesg mysqld.log tallylog anaconda.syslog dmesg.old ntpstats tomcat6 anaconda.xlog dracut.log piranha wpa_supplicant.log anaconda.yum.log gdm pm-powersave.log wtmp audit httpd ppp Xorg.0.log boot.log ibacm.log prelink Xorg.0.log.old btmp lastlog sa Xorg.1.log btmp-20130401 libvirt samba Xorg.2.log cluster luci secure Xorg.9.log ConsoleKit maillog secure-20130331 yum.log
Which mysqld.log this file is the log information we have to store our operations with the MySQL database, and we can get a lot of information by looking at the log file.
Because our MySQL database is accessible over the network, not a stand-alone database, where the protocol used is the TCP/IP protocol, we all know that the MySQL database binding port number is 3306, so we can see through the NETSTAT-ANP command, is the Linux system listening on the 3306 port number:
As shown above, the Linux system listens on the 3306 port number is our MySQL database!!!!
MySQL connection Linux system prompt "login appears 1130 is not allowed to connect to this MYSQL server" problem, workaround
Error Explanation: The server is not authorized to give you this IP is not connected
You want the root username to connect to the MySQL server from any host using the root password.
Run command: mysql>grant all privileges on * * to ' root ' @ '% ' identified by ' root ' with GRANT OPTION;
If you want to allow the user root to connect to the MySQL server from the IP-192.168.1.3 host and use root as the password
Run command: mysql>grant all privileges on *. * to ' root ' @ ' 192.168.1.3 ' identified by ' root ' with GRANT OPTION;
The above command creates a super account that can log in as root from any machine, and the password is root. This allows you to log in and operate using the handy graphical tool (Navicat for MySQL), including changing the root password.
Where the user name and password, IP for their own can ~ ~
Linux Learning CentOS (13) installation and configuration of MySQL database under--centos6.4
Start building with 50+ products and up to 12 months usage for Elastic Compute Service